]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
a68: remove redefined_keyword check and add test
authorJose E. Marchesi <jose.marchesi@oracle.com>
Sat, 27 Dec 2025 10:22:37 +0000 (11:22 +0100)
committerJose E. Marchesi <jose.marchesi@oracle.com>
Sat, 27 Dec 2025 10:52:49 +0000 (11:52 +0100)
This commit removes a spurious call to detect_redefined_keyword that
would emit confusing error messages.

Signed-off-by: Jose E. Marchesi <jemarch@gnu.org>
gcc/algol68/ChangeLog

* a68-parser-extract.cc (a68_extract_indicants): Do not
detect_redefined_keyword for accessed modules.

gcc/testsuite/ChangeLog

* algol68/compile/modules/program-error-multiple-delaration-module-1.a68:
New test.

gcc/algol68/a68-parser-extract.cc
gcc/testsuite/algol68/compile/modules/program-error-multiple-delaration-module-1.a68 [new file with mode: 0644]

index da14e1a2cae8fc3b01c699436aeb2e00f6b7aa50..42602daad3316c073bcce7a9b677204a0b9f7ea4 100644 (file)
@@ -345,7 +345,6 @@ a68_extract_indicants (NODE_T *p)
              FORWARD (q);
              if (q != NO_NODE)
                {
-                 detect_redefined_keyword (q, MODULE_DECLARATION);
                  if (IS (q, BOLD_TAG))
                    {
                      extract_revelation (q, false /* is_public */);
diff --git a/gcc/testsuite/algol68/compile/modules/program-error-multiple-delaration-module-1.a68 b/gcc/testsuite/algol68/compile/modules/program-error-multiple-delaration-module-1.a68
new file mode 100644 (file)
index 0000000..39ce7fe
--- /dev/null
@@ -0,0 +1,8 @@
+{ dg-modules "module10 module11 module12" }
+
+access Module10,
+       Module11,
+       Module11 { dg-error "multiple declaration.*bar" }
+begin assert (foo = 10);
+      assert (bar = 20)
+end