diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-06-08 21:15:29 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-06-08 21:15:29 +0000 |
commit | 77c168a836e4bec87461107a84d7b7bcf2b58156 (patch) | |
tree | 8a1fff687b08157b5b6ad0552e6991c8a944f46f /src | |
parent | f5b2f60bd1084e218358adba04604147e5429233 (diff) | |
download | postgresql-77c168a836e4bec87461107a84d7b7bcf2b58156.tar.gz postgresql-77c168a836e4bec87461107a84d7b7bcf2b58156.zip |
Remove grammar productions for prefix and postfix % and ^ operators,
as well as the existing pg_catalog entries for prefix and postfix %.
These have never been documented, though they did appear in one old
regression test. This avoids surprising behavior in cases like
"SELECT -25 % -10". Per recent discussion.
Note: although there is a catalog change here, I did not force initdb
since there's no harm in leaving the inaccessible entries in one's
copy of pg_operator.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/parser/gram.y | 18 | ||||
-rw-r--r-- | src/include/catalog/pg_operator.h | 4 | ||||
-rw-r--r-- | src/test/regress/expected/float8-exp-three-digits-win32.out | 4 | ||||
-rw-r--r-- | src/test/regress/expected/float8-exp-three-digits.out | 4 | ||||
-rw-r--r-- | src/test/regress/expected/float8-small-is-zero.out | 4 | ||||
-rw-r--r-- | src/test/regress/expected/float8-small-is-zero_1.out | 4 | ||||
-rw-r--r-- | src/test/regress/expected/float8.out | 4 | ||||
-rw-r--r-- | src/test/regress/sql/float8.sql | 4 |
8 files changed, 14 insertions, 32 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index c8ab0d3f4df..c54d6de8904 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -11,7 +11,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.491 2005/05/07 02:22:46 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.492 2005/06/08 21:15:28 tgl Exp $ * * HISTORY * AUTHOR DATE MAJOR EVENT @@ -6099,14 +6099,6 @@ a_expr: c_expr { $$ = $1; } { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, $2); } | '-' a_expr %prec UMINUS { $$ = doNegate($2); } - | '%' a_expr - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", NULL, $2); } - | '^' a_expr - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", NULL, $2); } - | a_expr '%' - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", $1, NULL); } - | a_expr '^' - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", $1, NULL); } | a_expr '+' a_expr { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", $1, $3); } | a_expr '-' a_expr @@ -6468,14 +6460,6 @@ b_expr: c_expr { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, $2); } | '-' b_expr %prec UMINUS { $$ = doNegate($2); } - | '%' b_expr - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", NULL, $2); } - | '^' b_expr - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", NULL, $2); } - | b_expr '%' - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", $1, NULL); } - | b_expr '^' - { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", $1, NULL); } | b_expr '+' b_expr { $$ = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", $1, $3); } | b_expr '-' b_expr diff --git a/src/include/catalog/pg_operator.h b/src/include/catalog/pg_operator.h index d7da19c4faa..ac098366ed3 100644 --- a/src/include/catalog/pg_operator.h +++ b/src/include/catalog/pg_operator.h @@ -8,7 +8,7 @@ * Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/catalog/pg_operator.h,v 1.132 2005/05/30 20:59:17 momjian Exp $ + * $PostgreSQL: pgsql/src/include/catalog/pg_operator.h,v 1.133 2005/06/08 21:15:28 tgl Exp $ * * NOTES * the genbki.sh script reads this file and generates .bki @@ -259,8 +259,6 @@ DATA(insert OID = 594 ( "*" PGNSP PGUID b f 701 701 701 594 0 0 0 0 0 f DATA(insert OID = 595 ( "@" PGNSP PGUID l f 0 701 701 0 0 0 0 0 0 float8abs - - )); DATA(insert OID = 596 ( "|/" PGNSP PGUID l f 0 701 701 0 0 0 0 0 0 dsqrt - - )); DATA(insert OID = 597 ( "||/" PGNSP PGUID l f 0 701 701 0 0 0 0 0 0 dcbrt - - )); -DATA(insert OID = 598 ( "%" PGNSP PGUID l f 0 701 701 0 0 0 0 0 0 dtrunc - - )); -DATA(insert OID = 599 ( "%" PGNSP PGUID r f 701 0 701 0 0 0 0 0 0 dround - - )); DATA(insert OID = 1284 ( "|" PGNSP PGUID l f 0 704 702 0 0 0 0 0 0 tintervalstart - - )); DATA(insert OID = 606 ( "<#>" PGNSP PGUID b f 702 702 704 0 0 0 0 0 0 mktinterval - - )); DATA(insert OID = 607 ( "=" PGNSP PGUID b t 26 26 16 607 608 609 609 609 610 oideq eqsel eqjoinsel )); diff --git a/src/test/regress/expected/float8-exp-three-digits-win32.out b/src/test/regress/expected/float8-exp-three-digits-win32.out index 63d5e33c936..2bafa4b86c8 100644 --- a/src/test/regress/expected/float8-exp-three-digits-win32.out +++ b/src/test/regress/expected/float8-exp-three-digits-win32.out @@ -204,7 +204,7 @@ SELECT '' AS five, f.f1, @f.f1 AS abs_f1 (5 rows) -- truncate -SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 +SELECT '' AS five, f.f1, trunc(f.f1) AS trunc_f1 FROM FLOAT8_TBL f; five | f1 | trunc_f1 ------+----------------------+---------------------- @@ -216,7 +216,7 @@ SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 (5 rows) -- round -SELECT '' AS five, f.f1, f.f1 % AS round_f1 +SELECT '' AS five, f.f1, round(f.f1) AS round_f1 FROM FLOAT8_TBL f; five | f1 | round_f1 ------+----------------------+---------------------- diff --git a/src/test/regress/expected/float8-exp-three-digits.out b/src/test/regress/expected/float8-exp-three-digits.out index 7f345c4b37e..116c6d12d06 100644 --- a/src/test/regress/expected/float8-exp-three-digits.out +++ b/src/test/regress/expected/float8-exp-three-digits.out @@ -203,7 +203,7 @@ SELECT '' AS five, f.f1, @f.f1 AS abs_f1 (5 rows) -- truncate -SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 +SELECT '' AS five, f.f1, trunc(f.f1) AS trunc_f1 FROM FLOAT8_TBL f; five | f1 | trunc_f1 ------+----------------------+---------------------- @@ -215,7 +215,7 @@ SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 (5 rows) -- round -SELECT '' AS five, f.f1, f.f1 % AS round_f1 +SELECT '' AS five, f.f1, round(f.f1) AS round_f1 FROM FLOAT8_TBL f; five | f1 | round_f1 ------+----------------------+---------------------- diff --git a/src/test/regress/expected/float8-small-is-zero.out b/src/test/regress/expected/float8-small-is-zero.out index a22ca55e228..71d9168950a 100644 --- a/src/test/regress/expected/float8-small-is-zero.out +++ b/src/test/regress/expected/float8-small-is-zero.out @@ -212,7 +212,7 @@ SELECT '' AS five, f.f1, @f.f1 AS abs_f1 (5 rows) -- truncate -SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 +SELECT '' AS five, f.f1, trunc(f.f1) AS trunc_f1 FROM FLOAT8_TBL f; five | f1 | trunc_f1 ------+----------------------+---------------------- @@ -224,7 +224,7 @@ SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 (5 rows) -- round -SELECT '' AS five, f.f1, f.f1 % AS round_f1 +SELECT '' AS five, f.f1, round(f.f1) AS round_f1 FROM FLOAT8_TBL f; five | f1 | round_f1 ------+----------------------+---------------------- diff --git a/src/test/regress/expected/float8-small-is-zero_1.out b/src/test/regress/expected/float8-small-is-zero_1.out index dbb0b1a69d5..87db7d3d590 100644 --- a/src/test/regress/expected/float8-small-is-zero_1.out +++ b/src/test/regress/expected/float8-small-is-zero_1.out @@ -212,7 +212,7 @@ SELECT '' AS five, f.f1, @f.f1 AS abs_f1 (5 rows) -- truncate -SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 +SELECT '' AS five, f.f1, trunc(f.f1) AS trunc_f1 FROM FLOAT8_TBL f; five | f1 | trunc_f1 ------+----------------------+---------------------- @@ -224,7 +224,7 @@ SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 (5 rows) -- round -SELECT '' AS five, f.f1, f.f1 % AS round_f1 +SELECT '' AS five, f.f1, round(f.f1) AS round_f1 FROM FLOAT8_TBL f; five | f1 | round_f1 ------+----------------------+---------------------- diff --git a/src/test/regress/expected/float8.out b/src/test/regress/expected/float8.out index fbf8c721768..8f5b32eac05 100644 --- a/src/test/regress/expected/float8.out +++ b/src/test/regress/expected/float8.out @@ -204,7 +204,7 @@ SELECT '' AS five, f.f1, @f.f1 AS abs_f1 (5 rows) -- truncate -SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 +SELECT '' AS five, f.f1, trunc(f.f1) AS trunc_f1 FROM FLOAT8_TBL f; five | f1 | trunc_f1 ------+----------------------+---------------------- @@ -216,7 +216,7 @@ SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 (5 rows) -- round -SELECT '' AS five, f.f1, f.f1 % AS round_f1 +SELECT '' AS five, f.f1, round(f.f1) AS round_f1 FROM FLOAT8_TBL f; five | f1 | round_f1 ------+----------------------+---------------------- diff --git a/src/test/regress/sql/float8.sql b/src/test/regress/sql/float8.sql index fc38e372d52..b4dd7be4b3f 100644 --- a/src/test/regress/sql/float8.sql +++ b/src/test/regress/sql/float8.sql @@ -79,11 +79,11 @@ SELECT '' AS five, f.f1, @f.f1 AS abs_f1 FROM FLOAT8_TBL f; -- truncate -SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 +SELECT '' AS five, f.f1, trunc(f.f1) AS trunc_f1 FROM FLOAT8_TBL f; -- round -SELECT '' AS five, f.f1, f.f1 % AS round_f1 +SELECT '' AS five, f.f1, round(f.f1) AS round_f1 FROM FLOAT8_TBL f; -- ceil / ceiling |