From e6c975f236b52dea43fdf496a93b01c27fe04a92 Mon Sep 17 00:00:00 2001 From: "James K. Lowden" <jklowden@symas.com> Date: Tue, 26 Mar 2024 20:24:43 -0400 Subject: [PATCH] lexer prioritizes data item names over function names --- gcc/cobol/scan.l | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/cobol/scan.l b/gcc/cobol/scan.l index 5d12512a3bcd..d1fd0b9edfca 100644 --- a/gcc/cobol/scan.l +++ b/gcc/cobol/scan.l @@ -1737,7 +1737,9 @@ COPY { ydflval.string = yylval.string = strdup(yytext); int token = keyword_tok(null_trim(yylval.string), true); - if( token ) { + auto elem = symbol_field(PROGRAM, 0, yylval.string); + + if( token && ! elem ) { // not a data item name // If token is an intrinsic, and not in Repository, pretend // it's a name and let the parser sort it out. auto name = intrinsic_function_name(token); -- GitLab