diff options
-rw-r--r-- | src/backend/parser/gram.y | 6 | ||||
-rw-r--r-- | src/test/regress/expected/create_function_3.out | 2 | ||||
-rw-r--r-- | src/test/regress/sql/create_function_3.sql | 2 |
3 files changed, 7 insertions, 3 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 9ee90e3f13a..52a254928f8 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -7990,7 +7990,11 @@ opt_routine_body: routine_body_stmt_list: routine_body_stmt_list routine_body_stmt ';' { - $$ = lappend($1, $2); + /* As in stmtmulti, discard empty statements */ + if ($2 != NULL) + $$ = lappend($1, $2); + else + $$ = $1; } | /*EMPTY*/ { diff --git a/src/test/regress/expected/create_function_3.out b/src/test/regress/expected/create_function_3.out index 5b6bc5eddbe..5955859bb57 100644 --- a/src/test/regress/expected/create_function_3.out +++ b/src/test/regress/expected/create_function_3.out @@ -267,7 +267,7 @@ CREATE FUNCTION functest_S_3() RETURNS boolean RETURN false; CREATE FUNCTION functest_S_3a() RETURNS boolean BEGIN ATOMIC - RETURN false; + ;;RETURN false;; END; CREATE FUNCTION functest_S_10(a text, b date) RETURNS boolean LANGUAGE SQL diff --git a/src/test/regress/sql/create_function_3.sql b/src/test/regress/sql/create_function_3.sql index 4b778999ed7..6e8b838ff2d 100644 --- a/src/test/regress/sql/create_function_3.sql +++ b/src/test/regress/sql/create_function_3.sql @@ -165,7 +165,7 @@ CREATE FUNCTION functest_S_3() RETURNS boolean RETURN false; CREATE FUNCTION functest_S_3a() RETURNS boolean BEGIN ATOMIC - RETURN false; + ;;RETURN false;; END; CREATE FUNCTION functest_S_10(a text, b date) RETURNS boolean |