diff options
author | Gaius Mulley <gaiusmod2@gmail.com> | 2024-03-07 19:41:58 +0000 |
---|---|---|
committer | Gaius Mulley <gaiusmod2@gmail.com> | 2024-03-07 19:41:58 +0000 |
commit | 99309b98c2e80a42886da36668e1e8d3d082699e (patch) | |
tree | 22821f92d3ff2306c5d7ca829e91741a22e21a17 /gcc/c | |
parent | 9f915684624413f96e1a5ffada398ccd1c533e38 (diff) | |
download | gcc-99309b98c2e80a42886da36668e1e8d3d082699e.zip gcc-99309b98c2e80a42886da36668e1e8d3d082699e.tar.gz gcc-99309b98c2e80a42886da36668e1e8d3d082699e.tar.bz2 |
PR modula2/109969 Linking large project causes an ICE
This patch contains a re-write of M2LexBuf.mod which removes the linked
list of token buckets and simplifies the implementation using a dynamic
array. It contains more checking (for empty source files for example).
The patch also contains a fix for an ICE in gcc/m2/gm2-gcc/builtins.cc
gcc/m2/ChangeLog:
PR modula2/109969
* gm2-compiler/M2LexBuf.def (TokenToLineNo): Rename parameter.
(TokenToColumnNo): Rename parameter.
(TokenToLocation): Rename parameter.
(FindFileNameFromToken): Rename parameter.
(DumpTokens): Rewrite comment.
* gm2-compiler/M2LexBuf.mod: Rewrite.
* gm2-compiler/P0SyntaxCheck.bnf (CheckInsertCandidate):
DumpTokens before and after inserting recovery token.
* gm2-gcc/m2builtins.cc (do_target_support_exists): Add
bf_c99_compl case.
* gm2-libs/Indexing.def (InitIndexTuned): New procedure
function.
(IsEmpty): New procedure function.
* gm2-libs/Indexing.mod (InitIndexTuned): New procedure
function.
(IsEmpty): New procedure function.
(Index): New field GrowFactor.
(PutIndice): Use GrowFactor to extend dynamic array.
Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com>
Diffstat (limited to 'gcc/c')
0 files changed, 0 insertions, 0 deletions