aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2024-10-28 11:28:53 +0100
committerMarc Poulhiès <dkm@gcc.gnu.org>2024-11-12 14:05:44 +0100
commit3408792e6016a53cbc10653948e07132d0f13361 (patch)
treef89491cfdd82c1a9bbeb5cf8964ab465a5c4b262
parent524590a3606d773a7827ed469d80f5c8701e5dd8 (diff)
downloadgcc-3408792e6016a53cbc10653948e07132d0f13361.zip
gcc-3408792e6016a53cbc10653948e07132d0f13361.tar.gz
gcc-3408792e6016a53cbc10653948e07132d0f13361.tar.bz2
ada: Fix unexpected Program_Error raised in the parser on mismatched []
This happens for example with: A : constant array (Natural range <>) of String := [ "xor" [; The problem is that the left bracket token is incorrectly classified as a name extension, but there is no handler in the Scan_Name_Extension_OK part of P_Name in Par.Ch4. gcc/ada/ChangeLog: PR ada/112821 * scans.ads (Token_Type): Remove Tok_Left_Bracket from Namext.
-rw-r--r--gcc/ada/scans.ads3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/ada/scans.ads b/gcc/ada/scans.ads
index 44c20fc..c445635 100644
--- a/gcc/ada/scans.ads
+++ b/gcc/ada/scans.ads
@@ -93,10 +93,11 @@ package Scans is
Tok_Raise, -- RAISE
Tok_Right_Curly_Bracket, -- }
+ Tok_Left_Bracket, -- [
+
Tok_Dot, -- . Namext
Tok_Apostrophe, -- ' Namext
- Tok_Left_Bracket, -- [ Namext
Tok_Left_Paren, -- ( Namext, Consk
Tok_Delta, -- DELTA Atkwd, Sterm, Consk