Skip to content

Commit 19e6a59

Browse files
committed
[lex.key] Add a proper grammar production for 'keyword'.
Move export-keyword, import-keyword, and module-keyword out of our table of keyword identifiers (where they don't fit) and make them directly be grammar productions for keyword instead.
1 parent 3405cbe commit 19e6a59

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

source/lex.tex

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -752,7 +752,14 @@
752752

753753
\rSec1[lex.key]{Keywords}
754754

755-
\enlargethispage{\baselineskip}%
755+
\begin{bnf}
756+
\nontermdef{keyword}\br
757+
\textnormal{any identifier listed in \tref{lex.key}}\br
758+
\grammarterm{import-keyword}\br
759+
\grammarterm{module-keyword}\br
760+
\grammarterm{export-keyword}
761+
\end{bnf}
762+
756763
\pnum
757764
\indextext{keyword|(}%
758765
The identifiers shown in \tref{lex.key} are reserved for use
@@ -799,29 +806,26 @@
799806
\keyword{enum} \\
800807
\keyword{explicit} \\
801808
\keyword{export} \\
802-
\grammarterm{export-keyword} \\
803-
\columnbreak
804809
\keyword{extern} \\
810+
\columnbreak
805811
\keyword{false} \\
806812
\keyword{float} \\
807813
\keyword{for} \\
808814
\keyword{friend} \\
809815
\keyword{goto} \\
810816
\keyword{if} \\
811-
\grammarterm{import-keyword} \\
812817
\keyword{inline} \\
813818
\keyword{int} \\
814819
\keyword{long} \\
815-
\grammarterm{module-keyword} \\
816820
\keyword{mutable} \\
817821
\keyword{namespace} \\
818822
\keyword{new} \\
819823
\keyword{noexcept} \\
820824
\keyword{nullptr} \\
821-
\columnbreak
822825
\keyword{operator} \\
823826
\keyword{private} \\
824827
\keyword{protected} \\
828+
\columnbreak
825829
\keyword{public} \\
826830
\keyword{register} \\
827831
\keyword{reinterpret_cast} \\
@@ -836,10 +840,10 @@
836840
\keyword{struct} \\
837841
\keyword{switch} \\
838842
\keyword{template} \\
839-
\columnbreak
840843
\keyword{this} \\
841844
\keyword{thread_local} \\
842845
\keyword{throw} \\
846+
\columnbreak
843847
\keyword{true} \\
844848
\keyword{try} \\
845849
\keyword{typedef} \\

0 commit comments

Comments
 (0)