AT_SETUP([identifiers])
AT_KEYWORDS([segment])
AT_DATA([input], [dnl
-a ab abc abcd
-A AB ABC ABCD
-aB aBC aBcD
-$x $y $z
+a ab abc abcd !abcd
+A AB ABC ABCD !ABCD
+aB aBC aBcD !aBcD
+$x $y $z !$z
grève@<00A0>@Ângstrom@<00A0>@poté
-#a #b #c ## #d
-@efg @ @@. @#@ @&t@
+#a #b #c ## #d !#d
+@efg @ @@. @#@ !@ @&t@
## # #12345 #.#
f@#_.#6
GhIjK
identifier a space
identifier ab space
identifier abc space
-identifier abcd
+identifier abcd space
+macro_id !abcd
newline \n (later)
identifier A space
identifier AB space
identifier ABC space
-identifier ABCD
+identifier ABCD space
+macro_id !ABCD
newline \n (later)
identifier aB space
identifier aBC space
-identifier aBcD
+identifier aBcD space
+macro_id !aBcD
newline \n (later)
identifier $x space
identifier $y space
-identifier $z
+identifier $z space
+macro_id !$z
newline \n (later)
identifier grève
identifier #b space
identifier #c space
identifier ## space
-identifier #d
+identifier #d space
+macro_id !#d
newline \n (later)
identifier @efg space
identifier @ space
identifier @@. space
identifier @#@ space
+macro_id !@ space
newline \n (later)
identifier ## space
identifier x space
number 1
identifier y space
-unexpected_char \_
+punct \_
identifier z
-newline \n (later)
-
AT_DATA([input], [dnl
~ & | = >= > <= < ~= <> ( ) , - + * / [[ ]] **
~&|=>=><=<~=<>(),-+*/[[]]**
+% : ; ? _ ` { } ~
])
AT_DATA([expout-base], [dnl
punct ~ space
punct [[
punct ]]
punct **
+newline \n (later)
+
+punct % space
+punct : space
+punct ; space
+punct ? space
+punct \_ space
+punct ` space
+punct { space
+punct } space
+punct ~
-newline \n (later)
-
end
newline \n (first)
identifier #
-unexpected_char ! space
+macro_id ! space
punct /
identifier usr
punct /