Signed-off-by: Jose E. Marchesi <[email protected]>
gcc/algol68/ChangeLog
* a68-parser-top-down.cc (a68_top_down_parser): Stop parsing after
longjump.
gcc/testsuite/ChangeLog
* algol68/compile/error-loop-1.a68: New test.
---
gcc/algol68/a68-parser-top-down.cc | 8 ++++----
gcc/testsuite/algol68/compile/error-loop-1.a68 | 1 +
2 files changed, 5 insertions(+), 4 deletions(-)
create mode 100644 gcc/testsuite/algol68/compile/error-loop-1.a68
diff --git a/gcc/algol68/a68-parser-top-down.cc
b/gcc/algol68/a68-parser-top-down.cc
index e4a3bf8c854..4a79e58217a 100644
--- a/gcc/algol68/a68-parser-top-down.cc
+++ b/gcc/algol68/a68-parser-top-down.cc
@@ -891,9 +891,9 @@ a68_top_down_parser (NODE_T *p)
(void) top_down_prelude_packet (p);
else
(void) top_down_particular_program (p);
- }
- top_down_loops (p);
- top_down_formats (p);
- top_down_access (p);
+ top_down_loops (p);
+ top_down_formats (p);
+ top_down_access (p);
+ }
}
diff --git a/gcc/testsuite/algol68/compile/error-loop-1.a68
b/gcc/testsuite/algol68/compile/error-loop-1.a68
new file mode 100644
index 00000000000..bc3b2e2ad70
--- /dev/null
+++ b/gcc/testsuite/algol68/compile/error-loop-1.a68
@@ -0,0 +1 @@
+from i from 1 to 10 do skip od { dg-error "" }
--
2.30.2