bc: fix "...; return}" to work, disallow "return ()"

function                                             old     new   delta
zbc_parse_expr                                        24    1865   +1841
zbc_parse_stmt_possibly_auto                        1425    1413     -12
bc_parse_expr_empty_ok                              1843       -   -1843
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/1 up/down: 1841/-1855)        Total: -14 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/testsuite/bc.tests b/testsuite/bc.tests
index 7795183..0a8222b 100755
--- a/testsuite/bc.tests
+++ b/testsuite/bc.tests
@@ -103,6 +103,11 @@
 	"2\n9\n" \
 	"" "for (;;) {2;break}; 9"
 
+testing "bc define {return}" \
+	"bc" \
+	"0\n9\n" \
+	"" "define w() {return}\nw();9"
+
 testing "bc define auto" \
 	"bc" \
 	"8\n9\n" \
diff --git a/testsuite/bc_misc1.bc b/testsuite/bc_misc1.bc
index 7e9d966..f666d70 100644
--- a/testsuite/bc_misc1.bc
+++ b/testsuite/bc_misc1.bc
@@ -4,9 +4,7 @@
 define y() {
 	return;
 }
-define z() {
-	return ();
-}
+define z() {return}
 scale = 0
 x=2
 x[0]=3