PIPS
|
#include "step_lexer.h"
#include "defines-local.h"
#include "step_bison_parser.h"
#include <limits.h>
#include <stdio.h>
Go to the source code of this file.
Data Structures | |
union | yyalloc |
INFRINGES ON USER NAME SPACE. More... | |
Macros | |
#define | YYBISON 30802 |
A Bison parser, made by GNU Bison 3.8.2. More... | |
#define | YYBISON_VERSION "3.8.2" |
Bison version string. More... | |
#define | YYSKELETON_NAME "yacc.c" |
Skeleton name. More... | |
#define | YYPURE 0 |
Pure parsers. More... | |
#define | YYPUSH 0 |
Push parsers. More... | |
#define | YYPULL 1 |
Pull parsers. More... | |
#define | yyparse(void) step_lexerparse |
------—. More... | |
#define | yylex step_lexerlex |
#define | yyerror step_lexererror |
#define | yydebug step_lexerdebug |
#define | yynerrs step_lexernerrs |
#define | yylval step_lexerlval |
#define | yychar step_lexerchar |
#define | YY_CAST(Type, Val) ((Type) (Val)) |
#define | YY_REINTERPRET_CAST(Type, Val) ((Type) (Val)) |
#define | YY_NULLPTR ((void*)0) |
#define | YYPTRDIFF_T long |
#define | YYPTRDIFF_MAXIMUM LONG_MAX |
#define | YYSIZE_T unsigned |
#define | YYSIZE_MAXIMUM |
#define | YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X)) |
#define | YY_(Msgid) Msgid |
#define | YY_ATTRIBUTE_PURE |
#define | YY_ATTRIBUTE_UNUSED |
#define | YY_USE(E) ((void) (E)) |
Suppress unused-variable warnings by "using" E. More... | |
#define | YY_INITIAL_VALUE(Value) Value |
Suppress an incorrect diagnostic about yylval being uninitialized. More... | |
#define | YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
#define | YY_IGNORE_MAYBE_UNINITIALIZED_END |
#define | YY_IGNORE_USELESS_CAST_BEGIN |
#define | YY_IGNORE_USELESS_CAST_END |
#define | YY_ASSERT(E) ((void) (0 && (E))) |
#define | YYSTACK_ALLOC YYMALLOC |
The parser invokes alloca or malloc; define the necessary symbols. More... | |
#define | YYSTACK_FREE YYFREE |
#define | YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
#define | YYMALLOC malloc |
#define | YYFREE free |
INFRINGES ON USER NAME SPACE. More... | |
#define | YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1) |
The size of the maximum gap between one aligned stack and the next. More... | |
#define | YYSTACK_BYTES(N) |
The size of an array large to enough to hold all stacks, each with N elements. More... | |
#define | YYCOPY_NEEDED 1 |
#define | YYSTACK_RELOCATE(Stack_alloc, Stack) |
Relocate STACK from its old location to the new one. More... | |
#define | YYCOPY(Dst, Src, Count) |
Copy COUNT objects from SRC to DST. More... | |
#define | YYFINAL 7 |
!YYCOPY_NEEDED More... | |
#define | YYLAST 94 |
YYLAST – Last index in YYTABLE. More... | |
#define | YYNTOKENS 31 |
YYNTOKENS – Number of terminals. More... | |
#define | YYNNTS 34 |
YYNNTS – Number of nonterminals. More... | |
#define | YYNRULES 69 |
YYNRULES – Number of rules. More... | |
#define | YYNSTATES 105 |
YYNSTATES – Number of states. More... | |
#define | YYMAXUTOK 285 |
YYMAXUTOK – Last valid token kind. More... | |
#define | YYTRANSLATE(YYX) |
YYTRANSLATE(TOKEN-NUM) – Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking. More... | |
#define | YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State]) |
Accessing symbol of state STATE. More... | |
#define | YYPACT_NINF (-76) |
#define | yypact_value_is_default(Yyn) ((Yyn) == YYPACT_NINF) |
#define | YYTABLE_NINF (-41) |
#define | yytable_value_is_error(Yyn) 0 |
#define | yyerrok (yyerrstatus = 0) |
#define | yyclearin (yychar = YYEMPTY) |
#define | YYACCEPT goto yyacceptlab |
#define | YYABORT goto yyabortlab |
#define | YYERROR goto yyerrorlab |
#define | YYNOMEM goto yyexhaustedlab |
#define | YYRECOVERING() (!!yyerrstatus) |
#define | YYBACKUP(Token, Value) |
#define | YYERRCODE YYUNDEF |
Backward compatibility with an undocumented macro. More... | |
#define | YYFPRINTF fprintf |
Enable debugging if requested. More... | |
#define | YYDPRINTF(Args) |
#define | YY_SYMBOL_PRINT(Title, Kind, Value, Location) |
#define | YY_STACK_PRINT(Bottom, Top) |
#define | YY_REDUCE_PRINT(Rule) |
#define | YYINITDEPTH 200 |
!YYDEBUG More... | |
#define | YYMAXDEPTH 10000 |
YYMAXDEPTH – maximum size the stacks can grow to (effective only if the built-in stack extension method is used). More... | |
#define | YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) |
Typedefs | |
typedef enum yysymbol_kind_t | yysymbol_kind_t |
typedef signed char | yytype_int8 |
On compilers that do not define PTRDIFF_MAX etc., make sure <limits.h> and (if available) <stdint.h> are included so that the code can choose integer types of a good width. More... | |
typedef short | yytype_int16 |
typedef unsigned char | yytype_uint8 |
Work around bug in HP-UX 11.23, which defines these macros incorrectly for preprocessor constants. More... | |
typedef unsigned short | yytype_uint16 |
typedef yytype_int8 | yy_state_t |
Stored state numbers (used for stacks). More... | |
typedef int | yy_state_fast_t |
State numbers in computations. More... | |
Functions | |
void | set_current_transform (int transform) |
First part of user prologue. More... | |
entity | entity_from_user_name (string name) |
void | remove_old_pragma (void) |
step_directive | begin_omp_construct (int type, string s) |
step_directive | end_omp_construct (int type) |
static step_directive | concat_drt_clauses (step_directive drt, cons *liste_clauses) |
static step_clause | step_handle_reduction_clause (cons *ident_liste, int op) |
static cons * | step_add_to_ident_list (string name, cons *list) |
void | step_lexererror (const char *s) |
step_bison_parser.c More... | |
void * | malloc (YYSIZE_T) |
void | free (void *) |
static const char * | yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED |
The user-facing name of the symbol whose (internal) number is YYSYMBOL. More... | |
static void | yy_symbol_value_print (FILE *yyo, yysymbol_kind_t yykind, YYSTYPE const *const yyvaluep) |
-------------------------------—. More... | |
static void | yy_symbol_print (FILE *yyo, yysymbol_kind_t yykind, YYSTYPE const *const yyvaluep) |
-----------------------—. More... | |
static void | yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop) |
--------------------------------------------------------------—. More... | |
static void | yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule) |
--------------------------------------------—. More... | |
static void | yydestruct (const char *yymsg, yysymbol_kind_t yykind, YYSTYPE *yyvaluep) |
-------------------------------------------—. More... | |
void | step_bison_parse (pragma pgm, statement stmt) |
Variables | |
static string | pragma_str_original =NULL |
static const yytype_int8 | yytranslate [] |
YYTRANSLATE[TOKEN-NUM] – Symbol number corresponding to TOKEN-NUM as returned by yylex. More... | |
static const yytype_int16 | yyrline [] |
YYRLINE[YYN] – Source line where rule number YYN was defined. More... | |
static const char *const | yytname [] |
YYTNAME[SYMBOL-NUM] – String name of the symbol SYMBOL-NUM. More... | |
static const yytype_int8 | yypact [] |
YYPACT[STATE-NUM] – Index in YYTABLE of the portion describing STATE-NUM. More... | |
static const yytype_int8 | yydefact [] |
YYDEFACT[STATE-NUM] – Default reduction number in state STATE-NUM. More... | |
static const yytype_int8 | yypgoto [] |
YYPGOTO[NTERM-NUM]. More... | |
static const yytype_int8 | yydefgoto [] |
YYDEFGOTO[NTERM-NUM]. More... | |
static const yytype_int8 | yytable [] |
YYTABLE[YYPACT[STATE-NUM]] – What to do in state STATE-NUM. More... | |
static const yytype_int8 | yycheck [] |
static const yytype_int8 | yystos [] |
YYSTOS[STATE-NUM] – The symbol kind of the accessing symbol of state STATE-NUM. More... | |
static const yytype_int8 | yyr1 [] |
YYR1[RULE-NUM] – Symbol kind of the left-hand side of rule RULE-NUM. More... | |
static const yytype_int8 | yyr2 [] |
YYR2[RULE-NUM] – Number of symbols on the right-hand side of rule RULE-NUM. More... | |
int | yydebug |
Nonzero means print parse trace. More... | |
int | yychar |
Lookahead token kind. More... | |
YYSTYPE | yylval |
The semantic value of the lookahead symbol. More... | |
int | yynerrs |
Number of syntax errors so far. More... | |
#define YY_ | ( | Msgid | ) | Msgid |
Definition at line 333 of file step_bison_parser.c.
#define YY_ACCESSING_SYMBOL | ( | State | ) | YY_CAST (yysymbol_kind_t, yystos[State]) |
Definition at line 399 of file step_bison_parser.c.
#define YY_ATTRIBUTE_PURE |
Definition at line 342 of file step_bison_parser.c.
#define YY_ATTRIBUTE_UNUSED |
Definition at line 350 of file step_bison_parser.c.
Definition at line 118 of file step_bison_parser.c.
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
Definition at line 379 of file step_bison_parser.c.
#define YY_IGNORE_MAYBE_UNINITIALIZED_END |
Definition at line 380 of file step_bison_parser.c.
#define YY_IGNORE_USELESS_CAST_BEGIN |
Definition at line 394 of file step_bison_parser.c.
#define YY_IGNORE_USELESS_CAST_END |
Definition at line 395 of file step_bison_parser.c.
Suppress an incorrect diagnostic about yylval being uninitialized.
Definition at line 376 of file step_bison_parser.c.
#define YY_NULLPTR ((void*)0) |
Definition at line 130 of file step_bison_parser.c.
#define YY_REDUCE_PRINT | ( | Rule | ) |
Definition at line 919 of file step_bison_parser.c.
Definition at line 119 of file step_bison_parser.c.
#define YY_STACK_PRINT | ( | Bottom, | |
Top | |||
) |
Definition at line 888 of file step_bison_parser.c.
#define YY_SYMBOL_PRINT | ( | Title, | |
Kind, | |||
Value, | |||
Location | |||
) |
Definition at line 826 of file step_bison_parser.c.
#define YYABORT goto yyabortlab |
Definition at line 780 of file step_bison_parser.c.
#define YYACCEPT goto yyacceptlab |
Definition at line 779 of file step_bison_parser.c.
#define YYBACKUP | ( | Token, | |
Value | |||
) |
Definition at line 787 of file step_bison_parser.c.
#define YYBISON 30802 |
A Bison parser, made by GNU Bison 3.8.2.
Bison implementation for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.
As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work under terms of your choice, so long as that work isn't itself a parser generator using the skeleton or a modified version thereof as a parser skeleton. Alternatively, if you modify or redistribute the parser skeleton itself, you may (at your option) remove this special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception.
This special exception was added by the Free Software Foundation in version 2.2 of Bison.
C LALR(1) parser skeleton written by Richard Stallman, by simplifying the original so-called "semantic" parser.
DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual, especially those whose name start with YY_ or yy_. They are private implementation details that can be changed or removed.
All symbols defined below should begin with yy or YY, to avoid infringing on user name space. This should be done even for local variables, as they might otherwise be expanded by user macros. There are some unavoidable exceptions within include files to define necessary library symbols; they are noted "INFRINGES ON
USER NAME SPACE" below.
Identify Bison output, and Bison version.
Definition at line 49 of file step_bison_parser.c.
#define YYBISON_VERSION "3.8.2" |
#define yychar step_lexerchar |
Definition at line 74 of file step_bison_parser.c.
Definition at line 777 of file step_bison_parser.c.
#define YYCOPY | ( | Dst, | |
Src, | |||
Count | |||
) |
Copy COUNT objects from SRC to DST.
The source and destination do not overlap.
Definition at line 516 of file step_bison_parser.c.
#define YYCOPY_NEEDED 1 |
Definition at line 488 of file step_bison_parser.c.
#define yydebug step_lexerdebug |
Definition at line 71 of file step_bison_parser.c.
#define YYDPRINTF | ( | Args | ) |
Definition at line 817 of file step_bison_parser.c.
#define YYERRCODE YYUNDEF |
Backward compatibility with an undocumented macro.
Use YYerror or YYUNDEF.
Definition at line 806 of file step_bison_parser.c.
#define yyerrok (yyerrstatus = 0) |
Definition at line 776 of file step_bison_parser.c.
#define yyerror step_lexererror |
Definition at line 70 of file step_bison_parser.c.
#define YYERROR goto yyerrorlab |
Definition at line 781 of file step_bison_parser.c.
#define YYFINAL 7 |
!YYCOPY_NEEDED
YYFINAL – State number of the termination state.
Definition at line 529 of file step_bison_parser.c.
#define YYFPRINTF fprintf |
Enable debugging if requested.
INFRINGES ON USER NAME SPACE
Definition at line 814 of file step_bison_parser.c.
#define YYFREE free |
INFRINGES ON USER NAME SPACE.
Definition at line 460 of file step_bison_parser.c.
#define YYINITDEPTH 200 |
!YYDEBUG
YYINITDEPTH – initial size of the parser's stacks.
Definition at line 938 of file step_bison_parser.c.
#define YYLAST 94 |
#define yylex | ( | void | ) | step_lexerlex |
Definition at line 69 of file step_bison_parser.c.
#define yylval step_lexerlval |
Definition at line 73 of file step_bison_parser.c.
#define YYMALLOC malloc |
Definition at line 454 of file step_bison_parser.c.
#define YYMAXDEPTH 10000 |
YYMAXDEPTH – maximum size the stacks can grow to (effective only if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) evaluated with infinite-precision integer arithmetic.
Definition at line 949 of file step_bison_parser.c.
#define YYMAXUTOK 285 |
#define yynerrs step_lexernerrs |
Definition at line 72 of file step_bison_parser.c.
#define YYNNTS 34 |
#define YYNOMEM goto yyexhaustedlab |
Definition at line 782 of file step_bison_parser.c.
#define YYNRULES 69 |
#define YYNSTATES 105 |
#define YYNTOKENS 31 |
#define YYPACT_NINF (-76) |
Definition at line 638 of file step_bison_parser.c.
#define yypact_value_is_default | ( | Yyn | ) | ((Yyn) == YYPACT_NINF) |
Definition at line 640 of file step_bison_parser.c.
#define yyparse | ( | void | ) | step_lexerparse |
------—.
Substitute the variable and function names.
| yyparse. | `-------—
Number of tokens to shift before error messages enabled.
Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere.
Their size.
The state stack: array, bottom, top.
The semantic value stack: array, bottom, top.
The return value of yyparse.
Lookahead symbol kind.
The variables used to return semantic value and location from the action routines.
The number of symbols on the RHS of the reduced rule. Keep to zero when no symbol should be popped.
Cause a token to be read.
--------------------------------------------------------—. | yynewstate – push a new state, which is found in yystate. | `---------------------------------------------------------—
In all cases, when you get here, the value and location stacks have just been pushed. So pushing a state here evens the stacks.
----------------------------------------------------------------—. | yysetstate – set current state (the top of the stack) to yystate. | `-----------------------------------------------------------------—
Get the current used size of the three stacks, in elements.
defined YYSTACK_RELOCATE
Extend the stack our own way.
!defined yyoverflow && !defined YYSTACK_RELOCATE
-------—. | yybackup. | `--------—
Do appropriate processing given the current state. Read a lookahead token if we need one and don't already have one.
First try to decide what to do without reference to lookahead token.
Not known => get a lookahead token if don't already have one.
YYCHAR is either empty, or end-of-input, or a valid lookahead.
The scanner already issued an error message, process directly to error recovery. But do not keep the error token as lookahead, it is too special and may lead us to an endless loop in error recovery.
If the proper action on seeing token YYTOKEN is to reduce or to detect an error, take that action.
Count tokens shifted since error; after three, turn off error status.
Shift the lookahead token.
Discard the shifted token.
-------------------------------------------------------—. | yydefault – do the default action for the current state. | `--------------------------------------------------------—
-------------------------—. | yyreduce – do a reduction. | `--------------------------—
yyn is the number of a rule to reduce with.
If YYLEN is nonzero, implement the default value of the action: '$$ = $1'.
Otherwise, the following line sets YYVAL to garbage. This behavior is undocumented and Bison users should not rely upon it. Assigning to YYVAL unconditionally makes the parser a bit smaller, and it avoids a GCC warning that YYVAL may be used uninitialized.
pragma: TK_RAW
$@1: empty
pragma: TK_OMP_PRAGMA $@1 omp_directive omp_comment TK_EOL
$@2: empty
pragma: TK_STEP_PRAGMA $@2 step_transformation TK_EOL
step_transformation: TK_STEP_TRANSFORMATION
omp_comment: TK_COMMENT
@3: empty
omp_directive: TK_OMP_PARALLEL @3 omp_parallel_clauses
@4: empty
omp_directive: TK_OMP_LOOP @4 omp_loop_clauses
@5: empty
omp_directive: TK_OMP_PARALLEL TK_OMP_LOOP @5 omp_parallel_loop_clauses
omp_directive: TK_OMP_MASTER
omp_directive: TK_OMP_SINGLE
omp_directive: TK_OMP_BARRIER
@6: empty
omp_directive: TK_OMP_THREADPRIVATE @6 omp_threadprivate_listvar
omp_directive: TK_OMP_END TK_OMP_PARALLEL
omp_directive: TK_OMP_END TK_OMP_LOOP omp_end_loop_clauses
omp_directive: TK_OMP_END TK_OMP_PARALLEL TK_OMP_LOOP
omp_directive: TK_OMP_END TK_OMP_MASTER
omp_directive: TK_OMP_END TK_OMP_SINGLE
omp_parallel_clauses: empty
omp_parallel_clauses: omp_parallel_clauses omp_shared
omp_parallel_clauses: omp_parallel_clauses omp_private
omp_parallel_clauses: omp_parallel_clauses omp_copyin
omp_parallel_clauses: omp_parallel_clauses omp_firstprivate
omp_parallel_clauses: omp_parallel_clauses omp_reduction
omp_parallel_clauses: omp_parallel_clauses omp_default
omp_loop_clauses: empty
omp_loop_clauses: omp_loop_clauses omp_private
omp_loop_clauses: omp_loop_clauses omp_firstprivate
omp_loop_clauses: omp_loop_clauses omp_reduction
omp_loop_clauses: omp_loop_clauses omp_schedule
omp_loop_clauses: omp_loop_clauses TK_OMP_NOWAIT
omp_end_loop_clauses: empty
omp_end_loop_clauses: omp_loop_clauses TK_OMP_NOWAIT
omp_parallel_loop_clauses: empty
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_shared
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_private
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_copyin
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_firstprivate
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_reduction
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_schedule
omp_parallel_loop_clauses: omp_parallel_loop_clauses omp_default
$@7: empty
omp_shared: TK_OMP_SHARED $@7 TK_LPAREN ident_list TK_RPAREN
$@8: empty
omp_private: TK_OMP_PRIVATE $@8 TK_LPAREN ident_list TK_RPAREN
$@9: empty
omp_copyin: TK_OMP_COPYIN $@9 TK_LPAREN ident_list TK_RPAREN
$@10: empty
omp_threadprivate_listvar: $@10 TK_LPAREN ident_list TK_RPAREN
$@11: empty
omp_firstprivate: TK_OMP_FIRSTPRIVATE $@11 TK_LPAREN ident_list TK_RPAREN
$@12: empty
omp_schedule: TK_OMP_SCHEDULE $@12 TK_LPAREN string_list TK_RPAREN
$@13: empty
$@14: empty
omp_reduction: TK_OMP_REDUCTION $@13 TK_LPAREN TK_OPERATOR $@14 TK_COLON ident_list TK_RPAREN
$@15: empty
omp_default: TK_OMP_DEFAULT $@15 TK_LPAREN TK_IDENT TK_RPAREN
string_list: TK_IDENT
string_list: string_list TK_COMMA TK_IDENT
ident_list: TK_IDENT
ident_list: ident_list TK_COMMA TK_IDENT
User semantic actions sometimes alter yychar, and that requires that yytoken be updated with the new translation. We take the approach of translating immediately before every use of yytoken. One alternative is translating here after every semantic action, but that translation would be missed if the semantic action invokes YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an incorrect destructor might then be invoked immediately. In the case of YYERROR or YYBACKUP, subsequent parser actions might lead to an incorrect destructor call or verbose syntax error message before the lookahead is translated.
Now 'shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule number reduced by.
----------------------------------—. | yyerrlab – here on detecting error. | `-----------------------------------—
Make sure we have latest lookahead translation. See comments at user semantic actions for why this is necessary.
If not already recovering from an error, report this error.
If just tried and failed to reuse lookahead token after an error, discard it.
Return failure if at end of input.
Else will try to reuse lookahead token after shifting the error token.
-----------------------------------------------—. | yyerrorlab – error raised explicitly by YYERROR. | `------------------------------------------------—
Pacify compilers when the user code never invokes YYERROR and the label yyerrorlab therefore never appears in user code.
Do not reclaim the symbols of the rule whose action triggered this YYERROR.
---------------------------------------------------------—. | yyerrlab1 – common code for both syntax error and YYERROR. | `----------------------------------------------------------—
Each real token shifted decrements this.
Pop stack until we find a state that shifts the error token.
Pop the current state because it cannot handle the error token.
Shift the error token.
---------------------------------—. | yyacceptlab – YYACCEPT comes here. | `----------------------------------—
-------------------------------—. | yyabortlab – YYABORT comes here. | `--------------------------------—
-------------------------------------------------------—. | yyexhaustedlab – YYNOMEM (memory exhaustion) comes here. | `--------------------------------------------------------—
------------------------------------------------------—. | yyreturnlab – parsing is finished, clean up and return. | `-------------------------------------------------------—
Make sure we have latest lookahead translation. See comments at user semantic actions for why this is necessary.
Do not reclaim the symbols of the rule whose action triggered this YYABORT or YYACCEPT.
Definition at line 68 of file step_bison_parser.c.
#define YYPOPSTACK | ( | N | ) | (yyvsp -= (N), yyssp -= (N)) |
#define YYPTRDIFF_MAXIMUM LONG_MAX |
Definition at line 293 of file step_bison_parser.c.
#define YYPTRDIFF_T long |
Definition at line 292 of file step_bison_parser.c.
#define YYPULL 1 |
#define YYPURE 0 |
#define YYPUSH 0 |
#define YYRECOVERING | ( | ) | (!!yyerrstatus) |
Definition at line 785 of file step_bison_parser.c.
#define YYSIZE_MAXIMUM |
Definition at line 310 of file step_bison_parser.c.
#define YYSIZE_T unsigned |
Definition at line 306 of file step_bison_parser.c.
#define YYSIZEOF | ( | X | ) | YY_CAST (YYPTRDIFF_T, sizeof (X)) |
Definition at line 316 of file step_bison_parser.c.
#define YYSKELETON_NAME "yacc.c" |
#define YYSTACK_ALLOC YYMALLOC |
The parser invokes alloca or malloc; define the necessary symbols.
Definition at line 440 of file step_bison_parser.c.
#define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
Definition at line 443 of file step_bison_parser.c.
#define YYSTACK_BYTES | ( | N | ) |
The size of an array large to enough to hold all stacks, each with N elements.
Definition at line 484 of file step_bison_parser.c.
#define YYSTACK_FREE YYFREE |
Definition at line 441 of file step_bison_parser.c.
The size of the maximum gap between one aligned stack and the next.
Definition at line 480 of file step_bison_parser.c.
#define YYSTACK_RELOCATE | ( | Stack_alloc, | |
Stack | |||
) |
Relocate STACK from its old location to the new one.
The local variables YYSIZE and YYSTACKSIZE give the old and new number of elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack.
Definition at line 495 of file step_bison_parser.c.
#define YYTABLE_NINF (-41) |
Definition at line 643 of file step_bison_parser.c.
#define yytable_value_is_error | ( | Yyn | ) | 0 |
Definition at line 645 of file step_bison_parser.c.
#define YYTRANSLATE | ( | YYX | ) |
YYTRANSLATE(TOKEN-NUM) – Symbol number corresponding to TOKEN-NUM as returned by yylex, with out-of-bounds checking.
Definition at line 548 of file step_bison_parser.c.
typedef int yy_state_fast_t |
typedef yytype_int8 yy_state_t |
Stored state numbers (used for stacks).
Definition at line 320 of file step_bison_parser.c.
typedef enum yysymbol_kind_t yysymbol_kind_t |
Definition at line 105 of file step_bison_parser.c.
typedef short yytype_int16 |
Definition at line 244 of file step_bison_parser.c.
typedef signed char yytype_int8 |
On compilers that do not define PTRDIFF_MAX etc., make sure <limits.h> and (if available) <stdint.h> are included so that the code can choose integer types of a good width.
INFRINGES ON USER NAME SPACE Narrow types that promote to a signed type and that can represent a signed or unsigned integer of at least N bits. In tables they can save space and decrease cache pressure. Promoting to a signed type helps avoid bugs in integer arithmetic.
Definition at line 236 of file step_bison_parser.c.
typedef unsigned short yytype_uint16 |
Definition at line 276 of file step_bison_parser.c.
typedef unsigned char yytype_uint8 |
Work around bug in HP-UX 11.23, which defines these macros incorrectly for preprocessor constants.
This workaround can likely be removed in 2023, as HPE has promised support for HP-UX 11.23 (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf.
Definition at line 265 of file step_bison_parser.c.
anonymous enum |
enum yysymbol_kind_t |
Symbol kind.
Definition at line 136 of file step_bison_parser.c.
step_directive begin_omp_construct | ( | int | type, |
string | s | ||
) |
In C, these OpenMP pragmas are already supported by blocks: no block conversion needed
Definition at line 159 of file parser.c.
References _FALLTHROUGH_, c_module_p(), CONS, current_statement, empty_comments, empty_extensions(), entity_empty_label(), fortran_module_p(), get_current_module_entity(), insert_optional_pragma(), instruction_to_statement(), make_empty_block_statement(), make_instruction_block(), move_statement_attributes(), new_step_directive(), NIL, pips_assert, pips_debug, pips_user_error, STATEMENT, statement_comments, statement_declarations, statement_decls_text, statement_extensions, statement_forloop_p(), statement_instruction, statement_label, statement_loop_p(), statement_sequence(), STEP_BARRIER, STEP_DO, STEP_MASTER, STEP_PARALLEL, STEP_PARALLEL_DO, STEP_SINGLE, and STEP_THREADPRIVATE.
|
static |
Definition at line 1893 of file step_bison_parser.c.
References gen_nconc(), pips_debug, and step_directive_clauses.
step_directive end_omp_construct | ( | int | type | ) |
suppression du CONTINUE portant le pragma optionnel dans le futur block
Definition at line 248 of file parser.c.
References CAR, empty_statement_or_labelless_continue_p(), fortran_module_p(), gen_length(), gen_nreverse(), get_current_module_entity(), get_current_step_directive(), pips_debug, pips_user_error, POP, sequence_statements, STATEMENT, statement_block(), statement_loop_p(), statement_sequence(), step_directive_block, step_directive_type, step_directive_undefined, step_directive_undefined_p, step_directives_bound_p(), step_directives_load(), STEP_DO, and STEP_PARALLEL_DO.
passage de name a NAME
determiner le nom avec le bon scope...
name | ame |
Definition at line 67 of file parser.c.
References c_module_p(), code_declarations, compilation_unit_of_module(), concatenate(), current_statement, entity_code(), entity_domain, entity_name, entity_undefined, entity_undefined_p, entity_user_name(), FOREACH, fortran_module_p(), free(), full_name, gen_find_tabulated(), gen_get_ancestor(), get_current_module_entity(), get_current_module_name(), MODULE_SEP_STRING, pips_debug, pips_user_error, statement_declarations, statement_domain, strdup(), and TOP_LEVEL_MODULE_NAME.
Referenced by step_add_to_ident_list().
void free | ( | void * | ) |
void* malloc | ( | YYSIZE_T | ) |
void remove_old_pragma | ( | void | ) |
Definition at line 139 of file parser.c.
References current_pragma, current_statement, EXTENSION, extension_pragma, extensions_extension, FOREACH, gen_extension_cons(), gen_nreverse(), NIL, pips_assert, pragma_undefined_p, statement_extensions, and statement_undefined_p.
void set_current_transform | ( | int | transform | ) |
First part of user prologue.
First part of user prologue.
parser.c
transform | ransform |
Definition at line 41 of file parser.c.
References current_transform.
Definition at line 1869 of file step_bison_parser.c.
References CONS, ENTITY, entity_from_user_name(), entity_undefined_p, pips_assert, and pips_debug.
pgm | gm |
stmt | tmt |
Definition at line 1901 of file step_bison_parser.c.
References concatenate(), free(), ifdebug, pips_debug, pragma_str_original, pragma_string, step_lexerparse(), strdup(), and yydebug.
Referenced by step_pragma_handle().
|
static |
Definition at line 1878 of file step_bison_parser.c.
References bound_map_entity_int_p(), ENTITY, entity_name, extend_map_entity_int(), FOREACH, gen_free_list(), make_map_entity_int(), make_step_clause_reduction(), pips_assert, and pips_debug.
void step_lexererror | ( | const char * | s | ) |
Definition at line 105 of file step_bison_parser.c.
References pips_user_error, pragma_str_original, and step_lexertext.
|
static |
--------------------------------------------—.
| Report that the YYRULE is going to be reduced. | `---------------------------------------------—
The symbols being reduced.
Definition at line 900 of file step_bison_parser.c.
References YY_ACCESSING_SYMBOL, yy_symbol_print(), YYFPRINTF, yyr2, and yyrline.
|
static |
--------------------------------------------------------------—.
| yy_stack_print – Print the state stack from its BOTTOM up to its | | TOP (included). | `---------------------------------------------------------------—
Definition at line 877 of file step_bison_parser.c.
References YYFPRINTF.
|
static |
-----------------------—.
| Print this symbol on YYO. | `------------------------—
Definition at line 861 of file step_bison_parser.c.
References yy_symbol_value_print(), YYFPRINTF, YYNTOKENS, and yysymbol_name().
Referenced by yy_reduce_print().
|
static |
-------------------------------—.
| Print this symbol's value on YYO. | `--------------------------------—
Definition at line 843 of file step_bison_parser.c.
References YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN, YY_IGNORE_MAYBE_UNINITIALIZED_END, and YY_USE.
Referenced by yy_symbol_print().
|
static |
-------------------------------------------—.
| Release the memory associated to this symbol. | `--------------------------------------------—
Definition at line 962 of file step_bison_parser.c.
References YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN, YY_IGNORE_MAYBE_UNINITIALIZED_END, YY_SYMBOL_PRINT, and YY_USE.
|
static |
The user-facing name of the symbol whose (internal) number is YYSYMBOL.
No bounds checking.
Definition at line 632 of file step_bison_parser.c.
References yytname.
Referenced by yy_symbol_print().
|
static |
Definition at line 103 of file step_bison_parser.c.
Referenced by step_bison_parse(), and step_lexererror().
int yychar |
|
static |
Definition at line 718 of file step_bison_parser.c.
int yydebug |
Nonzero means print parse trace.
It is left uninitialized so that multiple parsers can coexist.
Definition at line 927 of file step_bison_parser.c.
|
static |
YYDEFACT[STATE-NUM] – Default reduction number in state STATE-NUM.
Performed when YYTABLE does not specify something else to do. Zero means the default is an error.
Definition at line 668 of file step_bison_parser.c.
|
static |
YYDEFGOTO[NTERM-NUM].
Definition at line 693 of file step_bison_parser.c.
YYSTYPE yylval |
int yynerrs |
|
static |
YYPACT[STATE-NUM] – Index in YYTABLE of the portion describing STATE-NUM.
Definition at line 650 of file step_bison_parser.c.
|
static |
YYPGOTO[NTERM-NUM].
Definition at line 684 of file step_bison_parser.c.
|
static |
YYR1[RULE-NUM] – Symbol kind of the left-hand side of rule RULE-NUM.
Definition at line 750 of file step_bison_parser.c.
|
static |
YYR2[RULE-NUM] – Number of symbols on the right-hand side of rule RULE-NUM.
Definition at line 762 of file step_bison_parser.c.
Referenced by yy_reduce_print().
|
static |
YYRLINE[YYN] – Source line where rule number YYN was defined.
Definition at line 590 of file step_bison_parser.c.
Referenced by yy_reduce_print().
|
static |
YYSTOS[STATE-NUM] – The symbol kind of the accessing symbol of state STATE-NUM.
Definition at line 734 of file step_bison_parser.c.
|
static |
YYTABLE[YYPACT[STATE-NUM]] – What to do in state STATE-NUM.
If positive, shift that token. If negative, reduce the rule whose number is the opposite. If YYTABLE_NINF, syntax error.
Definition at line 704 of file step_bison_parser.c.
|
static |
YYTNAME[SYMBOL-NUM] – String name of the symbol SYMBOL-NUM.
First, the terminals, then, starting at YYNTOKENS, nonterminals.
Definition at line 612 of file step_bison_parser.c.
Referenced by yysymbol_name().
|
static |
YYTRANSLATE[TOKEN-NUM] – Symbol number corresponding to TOKEN-NUM as returned by yylex.
Definition at line 555 of file step_bison_parser.c.