From: Eric Botcazou <[email protected]>
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.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/scans.ads | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gcc/ada/scans.ads b/gcc/ada/scans.ads
index 44c20fcf3d2..c445635262a 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
--
2.43.0