]> git.ipfire.org Git - thirdparty/gcc.git/commit
[Ada] Clean up scanner
authorBob Duff <duff@adacore.com>
Tue, 21 Jun 2022 13:50:06 +0000 (09:50 -0400)
committerPierre-Marie de Rodat <derodat@adacore.com>
Tue, 12 Jul 2022 12:24:11 +0000 (12:24 +0000)
commit2148f2996ae76a7773eb7d8e30c02bd036ec7b3c
tree7aaa816d7c8d7e80b59386ddc2efda9f4ad8e39a
parentfe6f256d5ba85a588493a489af1bdbe8087e368a
[Ada] Clean up scanner

This patch removes some obsolete code in the scanner and related files,
and corrects some comments. Tok_Special is used only by the
preprocessor, and uses only the two characters '#' and '$'.

It might be simpler to have a single flag indicating we're scanning for
preprocessing, instead of the Special_Characters array and the
End_Of_Line_Is_Token flag, but that's for another day.

gcc/ada/

* scans.ads: Fix obsolete comments about Tok_Special, and give
Special_Character a predicate assuring it is one of the two
characters used in preprocessing.
* scng.ads: Clean up comments.
* scng.adb: Clean up handling of Tok_Special.  Remove comment
about '@' (target_name), which doesn't seem very helpful.
Set_Special_Character will now blow up if given anything other
than '#' and '$', because of the predicate on Special_Character;
it's not clear why it used to say "when others => null;".
Remove Comment_Is_Token, which is not used.
* scn.ads: Remove commented-out use clause.  Remove redundant
comment.
* ali-util.adb: Use "is null" for do-nothing procedures.
* gprep.adb (Post_Scan): Use "is null".
gcc/ada/ali-util.adb
gcc/ada/gprep.adb
gcc/ada/scans.ads
gcc/ada/scn.ads
gcc/ada/scng.adb
gcc/ada/scng.ads