diff --git a/ncdump/nctime0.c b/ncdump/nctime0.c index 35265b44d..8af924d97 100644 --- a/ncdump/nctime0.c +++ b/ncdump/nctime0.c @@ -99,7 +99,7 @@ bool_t is_bounds_var(char *varname, int *pargrpidp, int *parvaridp) { bounds_node_t *bp = bounds_list.first; for(; bp; bp = bp->next) { - if(STREQ(bp->bounds_name, varname)) { + if(NCSTREQ(bp->bounds_name, varname)) { *pargrpidp = bp->ncid; *parvaridp = bp->varid; return true; @@ -160,11 +160,11 @@ is_valid_time_unit(const char *units) { /* Return true only if this is a "bounds" attribute */ bool_t is_bounds_att(ncatt_t *attp) { - if(attp->type == NC_CHAR && attp->valgp && STREQ((char *)attp->name, "bounds")) { + if(attp->type == NC_CHAR && attp->valgp && NCSTREQ((char *)attp->name, "bounds")) { return true; } #ifdef USE_NETCDF4 - if(attp->type == NC_STRING && attp->valgp && STREQ((char *)attp->name, "bounds")) { + if(attp->type == NC_STRING && attp->valgp && NCSTREQ((char *)attp->name, "bounds")) { return true; } #endif /* USE_NETCDF4 */ diff --git a/ncdump/utils.c b/ncdump/utils.c index bdaa39eac..e59843538 100644 --- a/ncdump/utils.c +++ b/ncdump/utils.c @@ -313,7 +313,7 @@ nc_inq_grpname_count(int ncid, int igrp, char **lgrps, idnode_t *grpids) { char *grpname = lgrps[igrp]; /* permit empty string to also designate root group */ - if(grpname[0] == '\0' || STREQ(grpname,"/")) { + if(grpname[0] == '\0' || NCSTREQ(grpname,"/")) { count = 1; idadd(grpids, ncid); return count; diff --git a/ncdump/utils.h b/ncdump/utils.h index 237647adf..43e5fac90 100644 --- a/ncdump/utils.h +++ b/ncdump/utils.h @@ -10,8 +10,8 @@ #include "config.h" -#ifndef STREQ -#define STREQ(a, b) (*(a) == *(b) && strcmp((a), (b)) == 0) +#ifndef NCSTREQ +#define NCSTREQ(a, b) (*(a) == *(b) && strcmp((a), (b)) == 0) #endif /* Delimiter for separating netCDF groups in absolute pathnames, same as for HDF5 */ diff --git a/ncdump/vardata.c b/ncdump/vardata.c index 9bd2c38f2..7008b184f 100644 --- a/ncdump/vardata.c +++ b/ncdump/vardata.c @@ -473,7 +473,7 @@ print_rows( NC_CHECK(nc_get_vara(ncid, varid, cor, edg, (void *)valp)); /* Test if we should treat array of chars as strings along last dimension */ - if(vp->type == NC_CHAR && (vp->fmt == 0 || STREQ(vp->fmt,"%s") || STREQ(vp->fmt,""))) { + if(vp->type == NC_CHAR && (vp->fmt == 0 || NCSTREQ(vp->fmt,"%s") || NCSTREQ(vp->fmt,""))) { pr_tvals(vp, ncols, vals, cor); } else { /* for non-text variables */ for(i=0; i < d0 - 1; i++) { @@ -766,7 +766,7 @@ vardatax( NC_CHECK(nc_get_vara(ncid, varid, cor, edg, vals) ); /* Test if we should treat array of chars as a string */ if(vp->type == NC_CHAR && - (vp->fmt == 0 || STREQ(vp->fmt,"%s") || STREQ(vp->fmt,""))) { + (vp->fmt == 0 || NCSTREQ(vp->fmt,"%s") || NCSTREQ(vp->fmt,""))) { pr_tvalsx(vp, ncols, 0, lastrow, (char *) vals); } else { pr_any_valsx(vp, ncols, 0, lastrow, vals); diff --git a/ncgen/ncgen.l b/ncgen/ncgen.l index 76672a1d5..95b433f1f 100644 --- a/ncgen/ncgen.l +++ b/ncgen/ncgen.l @@ -371,7 +371,7 @@ NIL|nil|Nil { id = bbContents(lextext); len = unescape(id,id,bbLength(lextext),ISIDENT); bbSetlength(lextext,len); - if (STREQ(id, FILL_STRING)) return lexdebug(FILLMARKER); + if (NCSTREQ(id, FILL_STRING)) return lexdebug(FILLMARKER); yylval.sym = install(id); return lexdebug(IDENT); } diff --git a/ncgen/ncgen.y b/ncgen/ncgen.y index bfed1192b..0e7383c03 100644 --- a/ncgen/ncgen.y +++ b/ncgen/ncgen.y @@ -30,8 +30,8 @@ static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $"; #define YY_NO_INPUT 1 /* True if string a equals string b*/ -#ifndef STREQ -#define STREQ(a, b) (*(a) == *(b) && strcmp((a), (b)) == 0) +#ifndef NCSTREQ +#define NCSTREQ(a, b) (*(a) == *(b) && strcmp((a), (b)) == 0) #endif #define VLENSIZE (sizeof(nc_vlen_t)) #define MAXFLOATDIM 4294967295.0 diff --git a/ncgen/ncgenl.c b/ncgen/ncgenl.c index a6facb61b..6899382b1 100644 --- a/ncgen/ncgenl.c +++ b/ncgen/ncgenl.c @@ -1,5 +1,5 @@ -#line 2 "ncgenl.c" +#line 3 "ncgenl.c" #define YY_INT_ALIGNED short int @@ -7,17 +7,11 @@ #define yy_create_buffer ncg_create_buffer #define yy_delete_buffer ncg_delete_buffer -#define yy_scan_buffer ncg_scan_buffer -#define yy_scan_string ncg_scan_string -#define yy_scan_bytes ncg_scan_bytes +#define yy_flex_debug ncg_flex_debug #define yy_init_buffer ncg_init_buffer #define yy_flush_buffer ncg_flush_buffer #define yy_load_buffer_state ncg_load_buffer_state #define yy_switch_to_buffer ncg_switch_to_buffer -#define yypush_buffer_state ncgpush_buffer_state -#define yypop_buffer_state ncgpop_buffer_state -#define yyensure_buffer_stack ncgensure_buffer_stack -#define yy_flex_debug ncg_flex_debug #define yyin ncgin #define yyleng ncgleng #define yylex ncglex @@ -33,245 +27,11 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 6 -#define YY_FLEX_SUBMINOR_VERSION 4 +#define YY_FLEX_SUBMINOR_VERSION 1 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif -#ifdef yy_create_buffer -#define ncg_create_buffer_ALREADY_DEFINED -#else -#define yy_create_buffer ncg_create_buffer -#endif - -#ifdef yy_delete_buffer -#define ncg_delete_buffer_ALREADY_DEFINED -#else -#define yy_delete_buffer ncg_delete_buffer -#endif - -#ifdef yy_scan_buffer -#define ncg_scan_buffer_ALREADY_DEFINED -#else -#define yy_scan_buffer ncg_scan_buffer -#endif - -#ifdef yy_scan_string -#define ncg_scan_string_ALREADY_DEFINED -#else -#define yy_scan_string ncg_scan_string -#endif - -#ifdef yy_scan_bytes -#define ncg_scan_bytes_ALREADY_DEFINED -#else -#define yy_scan_bytes ncg_scan_bytes -#endif - -#ifdef yy_init_buffer -#define ncg_init_buffer_ALREADY_DEFINED -#else -#define yy_init_buffer ncg_init_buffer -#endif - -#ifdef yy_flush_buffer -#define ncg_flush_buffer_ALREADY_DEFINED -#else -#define yy_flush_buffer ncg_flush_buffer -#endif - -#ifdef yy_load_buffer_state -#define ncg_load_buffer_state_ALREADY_DEFINED -#else -#define yy_load_buffer_state ncg_load_buffer_state -#endif - -#ifdef yy_switch_to_buffer -#define ncg_switch_to_buffer_ALREADY_DEFINED -#else -#define yy_switch_to_buffer ncg_switch_to_buffer -#endif - -#ifdef yypush_buffer_state -#define ncgpush_buffer_state_ALREADY_DEFINED -#else -#define yypush_buffer_state ncgpush_buffer_state -#endif - -#ifdef yypop_buffer_state -#define ncgpop_buffer_state_ALREADY_DEFINED -#else -#define yypop_buffer_state ncgpop_buffer_state -#endif - -#ifdef yyensure_buffer_stack -#define ncgensure_buffer_stack_ALREADY_DEFINED -#else -#define yyensure_buffer_stack ncgensure_buffer_stack -#endif - -#ifdef yylex -#define ncglex_ALREADY_DEFINED -#else -#define yylex ncglex -#endif - -#ifdef yyrestart -#define ncgrestart_ALREADY_DEFINED -#else -#define yyrestart ncgrestart -#endif - -#ifdef yylex_init -#define ncglex_init_ALREADY_DEFINED -#else -#define yylex_init ncglex_init -#endif - -#ifdef yylex_init_extra -#define ncglex_init_extra_ALREADY_DEFINED -#else -#define yylex_init_extra ncglex_init_extra -#endif - -#ifdef yylex_destroy -#define ncglex_destroy_ALREADY_DEFINED -#else -#define yylex_destroy ncglex_destroy -#endif - -#ifdef yyget_debug -#define ncgget_debug_ALREADY_DEFINED -#else -#define yyget_debug ncgget_debug -#endif - -#ifdef yyset_debug -#define ncgset_debug_ALREADY_DEFINED -#else -#define yyset_debug ncgset_debug -#endif - -#ifdef yyget_extra -#define ncgget_extra_ALREADY_DEFINED -#else -#define yyget_extra ncgget_extra -#endif - -#ifdef yyset_extra -#define ncgset_extra_ALREADY_DEFINED -#else -#define yyset_extra ncgset_extra -#endif - -#ifdef yyget_in -#define ncgget_in_ALREADY_DEFINED -#else -#define yyget_in ncgget_in -#endif - -#ifdef yyset_in -#define ncgset_in_ALREADY_DEFINED -#else -#define yyset_in ncgset_in -#endif - -#ifdef yyget_out -#define ncgget_out_ALREADY_DEFINED -#else -#define yyget_out ncgget_out -#endif - -#ifdef yyset_out -#define ncgset_out_ALREADY_DEFINED -#else -#define yyset_out ncgset_out -#endif - -#ifdef yyget_leng -#define ncgget_leng_ALREADY_DEFINED -#else -#define yyget_leng ncgget_leng -#endif - -#ifdef yyget_text -#define ncgget_text_ALREADY_DEFINED -#else -#define yyget_text ncgget_text -#endif - -#ifdef yyget_lineno -#define ncgget_lineno_ALREADY_DEFINED -#else -#define yyget_lineno ncgget_lineno -#endif - -#ifdef yyset_lineno -#define ncgset_lineno_ALREADY_DEFINED -#else -#define yyset_lineno ncgset_lineno -#endif - -#ifdef yywrap -#define ncgwrap_ALREADY_DEFINED -#else -#define yywrap ncgwrap -#endif - -#ifdef yyalloc -#define ncgalloc_ALREADY_DEFINED -#else -#define yyalloc ncgalloc -#endif - -#ifdef yyrealloc -#define ncgrealloc_ALREADY_DEFINED -#else -#define yyrealloc ncgrealloc -#endif - -#ifdef yyfree -#define ncgfree_ALREADY_DEFINED -#else -#define yyfree ncgfree -#endif - -#ifdef yytext -#define ncgtext_ALREADY_DEFINED -#else -#define yytext ncgtext -#endif - -#ifdef yyleng -#define ncgleng_ALREADY_DEFINED -#else -#define yyleng ncgleng -#endif - -#ifdef yyin -#define ncgin_ALREADY_DEFINED -#else -#define yyin ncgin -#endif - -#ifdef yyout -#define ncgout_ALREADY_DEFINED -#else -#define yyout ncgout -#endif - -#ifdef yy_flex_debug -#define ncg_flex_debug_ALREADY_DEFINED -#else -#define yy_flex_debug ncg_flex_debug -#endif - -#ifdef yylineno -#define ncglineno_ALREADY_DEFINED -#else -#define yylineno ncglineno -#endif - /* First, we deal with platform-specific or compiler-specific issues. */ /* begin standard C headers. */ @@ -342,16 +102,10 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif -#ifndef SIZE_MAX -#define SIZE_MAX (~(size_t)0) -#endif - #endif /* ! C99 */ #endif /* ! FLEXINT_H */ -/* begin standard C++ headers. */ - /* TODO: this is always defined, so inline it */ #define yyconst const @@ -364,26 +118,32 @@ typedef unsigned int flex_uint32_t; /* Returned upon end-of-file. */ #define YY_NULL 0 -/* Promotes a possibly negative, possibly signed char to an - * integer in range [0..255] for use as an array index. +/* Promotes a possibly negative, possibly signed char to an unsigned + * integer for use as an array index. If the signed char is negative, + * we want to instead treat it as an 8-bit unsigned char, hence the + * double cast. */ -#define YY_SC_TO_UI(c) ((YY_CHAR) (c)) +#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) /* Enter a start condition. This macro really ought to take a parameter, * but we do it the disgusting crufty way forced on us by the ()-less * definition of BEGIN. */ #define BEGIN (yy_start) = 1 + 2 * + /* Translate the current start state into a value that can be later handed * to BEGIN to return to the state. The YYSTATE alias is for lex * compatibility. */ #define YY_START (((yy_start) - 1) / 2) #define YYSTATE YY_START + /* Action number for EOF rule of a given start state. */ #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) + /* Special action meaning "start processing a new file". */ -#define YY_NEW_FILE yyrestart( yyin ) +#define YY_NEW_FILE ncgrestart(ncgin ) + #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ @@ -413,14 +173,14 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE; typedef size_t yy_size_t; #endif -extern int yyleng; +extern int ncgleng; -extern FILE *yyin, *yyout; +extern FILE *ncgin, *ncgout; #define EOB_ACT_CONTINUE_SCAN 0 #define EOB_ACT_END_OF_FILE 1 #define EOB_ACT_LAST_MATCH 2 - + #define YY_LESS_LINENO(n) #define YY_LINENO_REWIND_TO(ptr) @@ -428,15 +188,16 @@ extern FILE *yyin, *yyout; #define yyless(n) \ do \ { \ - /* Undo effects of setting up yytext. */ \ + /* Undo effects of setting up ncgtext. */ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ *yy_cp = (yy_hold_char); \ YY_RESTORE_YY_MORE_OFFSET \ (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ - YY_DO_BEFORE_ACTION; /* set up yytext again */ \ + YY_DO_BEFORE_ACTION; /* set up ncgtext again */ \ } \ while ( 0 ) + #define unput(c) yyunput( c, (yytext_ptr) ) #ifndef YY_STRUCT_YY_BUFFER_STATE @@ -496,8 +257,8 @@ struct yy_buffer_state * possible backing-up. * * When we actually see the EOF, we change the status to "new" - * (via yyrestart()), so that the user can continue scanning by - * just pointing yyin at a new input file. + * (via ncgrestart()), so that the user can continue scanning by + * just pointing ncgin at a new input file. */ #define YY_BUFFER_EOF_PENDING 2 @@ -518,98 +279,106 @@ static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */ #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ : NULL) + /* Same as previous macro, but useful when we know that the buffer stack is not * NULL or when we need an lvalue. For internal use only. */ #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] -/* yy_hold_char holds the character lost when yytext is formed. */ +/* yy_hold_char holds the character lost when ncgtext is formed. */ static char yy_hold_char; static int yy_n_chars; /* number of characters read into yy_ch_buf */ -int yyleng; +int ncgleng; /* Points to current character in buffer. */ static char *yy_c_buf_p = NULL; static int yy_init = 0; /* whether we need to initialize */ static int yy_start = 0; /* start state number */ -/* Flag which is used to allow yywrap()'s to do buffer switches - * instead of setting up a fresh yyin. A bit of a hack ... +/* Flag which is used to allow ncgwrap()'s to do buffer switches + * instead of setting up a fresh ncgin. A bit of a hack ... */ static int yy_did_buffer_switch_on_eof; -void yyrestart ( FILE *input_file ); -void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer ); -YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size ); -void yy_delete_buffer ( YY_BUFFER_STATE b ); -void yy_flush_buffer ( YY_BUFFER_STATE b ); -void yypush_buffer_state ( YY_BUFFER_STATE new_buffer ); -void yypop_buffer_state ( void ); +void ncgrestart (FILE *input_file ); +void ncg_switch_to_buffer (YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE ncg_create_buffer (FILE *file,int size ); +void ncg_delete_buffer (YY_BUFFER_STATE b ); +void ncg_flush_buffer (YY_BUFFER_STATE b ); +void ncgpush_buffer_state (YY_BUFFER_STATE new_buffer ); +void ncgpop_buffer_state (void ); -static void yyensure_buffer_stack ( void ); -static void yy_load_buffer_state ( void ); -static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); -#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) +static void ncgensure_buffer_stack (void ); +static void ncg_load_buffer_state (void ); +static void ncg_init_buffer (YY_BUFFER_STATE b,FILE *file ); -YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); -YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); -YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len ); +#define YY_FLUSH_BUFFER ncg_flush_buffer(YY_CURRENT_BUFFER ) -void *yyalloc ( yy_size_t ); -void *yyrealloc ( void *, yy_size_t ); -void yyfree ( void * ); +YY_BUFFER_STATE ncg_scan_buffer (char *base,yy_size_t size ); +YY_BUFFER_STATE ncg_scan_string (yyconst char *yy_str ); +YY_BUFFER_STATE ncg_scan_bytes (yyconst char *bytes,int len ); + +void *ncgalloc (yy_size_t ); +void *ncgrealloc (void *,yy_size_t ); +void ncgfree (void * ); + +#define yy_new_buffer ncg_create_buffer -#define yy_new_buffer yy_create_buffer #define yy_set_interactive(is_interactive) \ { \ if ( ! YY_CURRENT_BUFFER ){ \ - yyensure_buffer_stack (); \ + ncgensure_buffer_stack (); \ YY_CURRENT_BUFFER_LVALUE = \ - yy_create_buffer( yyin, YY_BUF_SIZE ); \ + ncg_create_buffer(ncgin,YY_BUF_SIZE ); \ } \ YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ } + #define yy_set_bol(at_bol) \ { \ if ( ! YY_CURRENT_BUFFER ){\ - yyensure_buffer_stack (); \ + ncgensure_buffer_stack (); \ YY_CURRENT_BUFFER_LVALUE = \ - yy_create_buffer( yyin, YY_BUF_SIZE ); \ + ncg_create_buffer(ncgin,YY_BUF_SIZE ); \ } \ YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ } + #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) /* Begin user sect3 */ -typedef flex_uint8_t YY_CHAR; -FILE *yyin = NULL, *yyout = NULL; +typedef unsigned char YY_CHAR; + +FILE *ncgin = NULL, *ncgout = NULL; typedef int yy_state_type; -extern int yylineno; -int yylineno = 1; +extern int ncglineno; -extern char *yytext; +int ncglineno = 1; + +extern char *ncgtext; #ifdef yytext_ptr #undef yytext_ptr #endif -#define yytext_ptr yytext +#define yytext_ptr ncgtext -static yy_state_type yy_get_previous_state ( void ); -static yy_state_type yy_try_NUL_trans ( yy_state_type current_state ); -static int yy_get_next_buffer ( void ); -static void yynoreturn yy_fatal_error ( const char* msg ); +static yy_state_type yy_get_previous_state (void ); +static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); +static int yy_get_next_buffer (void ); +static void yynoreturn yy_fatal_error (yyconst char* msg ); /* Done after the current pattern has been matched and before the - * corresponding action - sets up yytext. + * corresponding action - sets up ncgtext. */ #define YY_DO_BEFORE_ACTION \ (yytext_ptr) = yy_bp; \ - yyleng = (int) (yy_cp - yy_bp); \ + ncgleng = (int) (yy_cp - yy_bp); \ (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; + #define YY_NUM_RULES 49 #define YY_END_OF_BUFFER 50 /* This struct is not used in this scanner, @@ -619,7 +388,7 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static const flex_int16_t yy_accept[422] = +static yyconst flex_int16_t yy_accept[422] = { 0, 0, 0, 46, 46, 0, 0, 50, 48, 1, 44, 48, 48, 48, 48, 38, 32, 36, 36, 35, 35, @@ -670,7 +439,7 @@ static const flex_int16_t yy_accept[422] = 0 } ; -static const YY_CHAR yy_ec[256] = +static yyconst YY_CHAR yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, @@ -702,7 +471,7 @@ static const YY_CHAR yy_ec[256] = 1, 1, 1, 1, 1 } ; -static const YY_CHAR yy_meta[69] = +static yyconst YY_CHAR yy_meta[69] = { 0, 1, 1, 2, 1, 1, 1, 3, 4, 5, 5, 6, 7, 8, 8, 8, 8, 8, 8, 8, 1, @@ -713,7 +482,7 @@ static const YY_CHAR yy_meta[69] = 11, 11, 11, 14, 1, 11, 11, 11 } ; -static const flex_int16_t yy_base[440] = +static yyconst flex_uint16_t yy_base[440] = { 0, 0, 0, 325, 321, 264, 255, 318, 2387, 67, 2387, 64, 269, 61, 62, 95, 77, 136, 259, 51, 61, @@ -765,7 +534,7 @@ static const flex_int16_t yy_base[440] = 2315, 2329, 2339, 2345, 2353, 2355, 2361, 2367, 2373 } ; -static const flex_int16_t yy_def[440] = +static yyconst flex_int16_t yy_def[440] = { 0, 421, 1, 422, 422, 423, 423, 421, 421, 421, 421, 424, 425, 421, 426, 421, 427, 421, 17, 428, 428, @@ -817,7 +586,7 @@ static const flex_int16_t yy_def[440] = 421, 421, 421, 421, 421, 421, 421, 421, 421 } ; -static const flex_int16_t yy_nxt[2456] = +static yyconst flex_uint16_t yy_nxt[2456] = { 0, 8, 9, 10, 9, 8, 11, 12, 8, 13, 14, 15, 16, 17, 18, 18, 18, 18, 18, 18, 8, @@ -1091,7 +860,7 @@ static const flex_int16_t yy_nxt[2456] = 421, 421, 421, 421, 421 } ; -static const flex_int16_t yy_chk[2456] = +static yyconst flex_int16_t yy_chk[2456] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1368,8 +1137,8 @@ static const flex_int16_t yy_chk[2456] = static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; -extern int yy_flex_debug; -int yy_flex_debug = 0; +extern int ncg_flex_debug; +int ncg_flex_debug = 0; /* The intent behind this definition is that it'll catch * any uses of REJECT which flex missed. @@ -1378,7 +1147,7 @@ int yy_flex_debug = 0; #define yymore() yymore_used_but_not_detected #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET -char *yytext; +char *ncgtext; #line 1 "ncgen.l" #line 2 "ncgen.l" /********************************************************************* @@ -1518,7 +1287,7 @@ struct Specialtoken specials[] = { {NULL,0} /* null terminate */ }; -#line 1521 "ncgenl.c" + /* The most correct (validating) version of UTF8 character set (Taken from: http://www.w3.org/2005/03/23-lex-U) @@ -1561,7 +1330,7 @@ ID ([A-Za-z_]|{UTF8})([A-Z.@#\[\]a-z_0-9+-]|{UTF8})* /* Note: this definition of string will work for utf8 as well, although it is a very relaxed definition */ -#line 1564 "ncgenl.c" +#line 1334 "ncgenl.c" #define INITIAL 0 #define ST_C_COMMENT 1 @@ -1579,36 +1348,36 @@ ID ([A-Za-z_]|{UTF8})([A-Z.@#\[\]a-z_0-9+-]|{UTF8})* #define YY_EXTRA_TYPE void * #endif -static int yy_init_globals ( void ); +static int yy_init_globals (void ); /* Accessor methods to globals. These are made visible to non-reentrant scanners for convenience. */ -int yylex_destroy ( void ); +int ncglex_destroy (void ); -int yyget_debug ( void ); +int ncgget_debug (void ); -void yyset_debug ( int debug_flag ); +void ncgset_debug (int debug_flag ); -YY_EXTRA_TYPE yyget_extra ( void ); +YY_EXTRA_TYPE ncgget_extra (void ); -void yyset_extra ( YY_EXTRA_TYPE user_defined ); +void ncgset_extra (YY_EXTRA_TYPE user_defined ); -FILE *yyget_in ( void ); +FILE *ncgget_in (void ); -void yyset_in ( FILE * _in_str ); +void ncgset_in (FILE * _in_str ); -FILE *yyget_out ( void ); +FILE *ncgget_out (void ); -void yyset_out ( FILE * _out_str ); +void ncgset_out (FILE * _out_str ); - int yyget_leng ( void ); + int ncgget_leng (void ); -char *yyget_text ( void ); +char *ncgget_text (void ); -int yyget_lineno ( void ); +int ncgget_lineno (void ); -void yyset_lineno ( int _line_number ); +void ncgset_lineno (int _line_number ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1616,31 +1385,32 @@ void yyset_lineno ( int _line_number ); #ifndef YY_SKIP_YYWRAP #ifdef __cplusplus -extern "C" int yywrap ( void ); +extern "C" int ncgwrap (void ); #else -extern int yywrap ( void ); +extern int ncgwrap (void ); #endif #endif #ifndef YY_NO_UNPUT - static void yyunput ( int c, char *buf_ptr ); + static void yyunput (int c,char *buf_ptr ); #endif #ifndef yytext_ptr -static void yy_flex_strncpy ( char *, const char *, int ); +static void yy_flex_strncpy (char *,yyconst char *,int ); #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen ( const char * ); +static int yy_flex_strlen (yyconst char * ); #endif #ifndef YY_NO_INPUT + #ifdef __cplusplus -static int yyinput ( void ); +static int yyinput (void ); #else -static int input ( void ); +static int input (void ); #endif #endif @@ -1660,7 +1430,7 @@ static int input ( void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) +#define ECHO do { if (fwrite( ncgtext, (size_t) ncgleng, 1, ncgout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1671,20 +1441,20 @@ static int input ( void ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - int n; \ + size_t n; \ for ( n = 0; n < max_size && \ - (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ + (c = getc( ncgin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ if ( c == '\n' ) \ buf[n++] = (char) c; \ - if ( c == EOF && ferror( yyin ) ) \ + if ( c == EOF && ferror( ncgin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ else \ { \ errno=0; \ - while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ + while ( (result = (int) fread(buf, 1, max_size, ncgin))==0 && ferror(ncgin)) \ { \ if( errno != EINTR) \ { \ @@ -1692,7 +1462,7 @@ static int input ( void ); break; \ } \ errno=0; \ - clearerr(yyin); \ + clearerr(ncgin); \ } \ }\ \ @@ -1725,12 +1495,12 @@ static int input ( void ); #ifndef YY_DECL #define YY_DECL_IS_OURS 1 -extern int yylex (void); +extern int ncglex (void); -#define YY_DECL int yylex (void) +#define YY_DECL int ncglex (void) #endif /* !YY_DECL */ -/* Code executed at the beginning of each rule, after yytext and yyleng +/* Code executed at the beginning of each rule, after ncgtext and ncgleng * have been set up. */ #ifndef YY_USER_ACTION @@ -1764,31 +1534,31 @@ YY_DECL if ( ! (yy_start) ) (yy_start) = 1; /* first start state */ - if ( ! yyin ) - yyin = stdin; + if ( ! ncgin ) + ncgin = stdin; - if ( ! yyout ) - yyout = stdout; + if ( ! ncgout ) + ncgout = stdout; if ( ! YY_CURRENT_BUFFER ) { - yyensure_buffer_stack (); + ncgensure_buffer_stack (); YY_CURRENT_BUFFER_LVALUE = - yy_create_buffer( yyin, YY_BUF_SIZE ); + ncg_create_buffer(ncgin,YY_BUF_SIZE ); } - yy_load_buffer_state( ); + ncg_load_buffer_state( ); } { #line 218 "ncgen.l" -#line 1785 "ncgenl.c" +#line 1556 "ncgenl.c" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { yy_cp = (yy_c_buf_p); - /* Support of yytext. */ + /* Support of ncgtext. */ *yy_cp = (yy_hold_char); /* yy_bp points to the position in yy_ch_buf of the start of @@ -1810,9 +1580,9 @@ yy_match: { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 422 ) - yy_c = yy_meta[yy_c]; + yy_c = yy_meta[(unsigned int) yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c]; ++yy_cp; } while ( yy_base[yy_current_state] != 2387 ); @@ -1861,19 +1631,19 @@ YY_RULE_SETUP /* In netcdf4, this will be used in a variety of places, so only remove escapes */ /* -if(yyleng > MAXTRST) { +if(ncgleng > MAXTRST) { yyerror("string too long, truncated\n"); -yytext[MAXTRST-1] = '\0'; +ncgtext[MAXTRST-1] = '\0'; } */ /* FIX: Assumes unescape also does normalization */ - bbSetalloc(lextext,yyleng+1); /*+1 for nul */ + bbSetalloc(lextext,ncgleng+1); /*+1 for nul */ /* Adjust length */ - bbSetlength(lextext,yyleng-2); /*-2 for quotes */ + bbSetlength(lextext,ncgleng-2); /*-2 for quotes */ len = unescape(bbContents(lextext), - (char *)yytext+1,yyleng-2,!ISIDENT); + (char *)ncgtext+1,ncgleng-2,!ISIDENT); if(len < 0) { - sprintf(errstr,"Illegal character: %s",yytext); + sprintf(errstr,"Illegal character: %s",ncgtext); yyerror(errstr); } bbSetlength(lextext,len); @@ -1885,8 +1655,8 @@ case 4: YY_RULE_SETUP #line 251 "ncgen.l" { /* drop leading 0x; pad to even number of chars */ - char* p = yytext+2; - int len = yyleng - 2; + char* p = ncgtext+2; + int len = ncgleng - 2; bbClear(lextext); bbAppendn(lextext,p,len); if((len % 2) == 1) bbAppend(lextext,'0'); @@ -2011,7 +1781,7 @@ case 27: YY_RULE_SETUP #line 291 "ncgen.l" { /* missing value (pre-2.4 backward compatibility) */ - if (yytext[0] == '-') { + if (ncgtext[0] == '-') { double_val = NEGNC_INFINITE; } else { double_val = NC_INFINITE; @@ -2033,7 +1803,7 @@ case 29: YY_RULE_SETUP #line 306 "ncgen.l" {/* missing value (pre-2.4 backward compatibility)*/ - if (yytext[0] == '-') { + if (ncgtext[0] == '-') { float_val = NEGNC_INFINITEF; } else { float_val = NC_INFINITEF; @@ -2069,7 +1839,7 @@ YY_RULE_SETUP #line 331 "ncgen.l" { bbClear(lextext); - bbAppendn(lextext,(char*)yytext,yyleng+1); /* include null */ + bbAppendn(lextext,(char*)ncgtext,ncgleng+1); /* include null */ bbNull(lextext); yylval.sym = makepath(bbContents(lextext)); return lexdebug(PATH); @@ -2080,7 +1850,7 @@ YY_RULE_SETUP #line 340 "ncgen.l" {struct Specialtoken* st; bbClear(lextext); - bbAppendn(lextext,(char*)yytext,yyleng+1); /* include null */ + bbAppendn(lextext,(char*)ncgtext,ncgleng+1); /* include null */ bbNull(lextext); for(st=specials;st->name;st++) { if(strcmp(bbContents(lextext),st->name)==0) {return lexdebug(st->token);} @@ -2097,7 +1867,7 @@ YY_RULE_SETUP char* p; char* q; /* copy the trimmed name */ bbClear(lextext); - bbAppendn(lextext,(char*)yytext,yyleng+1); /* include null */ + bbAppendn(lextext,(char*)ncgtext,ncgleng+1); /* include null */ bbNull(lextext); p = bbContents(lextext); q = p; @@ -2114,12 +1884,12 @@ YY_RULE_SETUP #line 367 "ncgen.l" { char* id; int len; bbClear(lextext); - bbAppendn(lextext,(char*)yytext,yyleng+1); /* include null */ + bbAppendn(lextext,(char*)ncgtext,ncgleng+1); /* include null */ bbNull(lextext); id = bbContents(lextext); len = unescape(id,id,bbLength(lextext),ISIDENT); bbSetlength(lextext,len); - if (STREQ(id, FILL_STRING)) return lexdebug(FILLMARKER); + if (NCSTREQ(id, FILL_STRING)) return lexdebug(FILLMARKER); yylval.sym = install(id); return lexdebug(IDENT); } @@ -2198,21 +1968,21 @@ YY_RULE_SETUP { int c; int token = 0; - int slen = strlen(yytext); + int slen = strlen(ncgtext); char* stag = NULL; int tag = NC_NAT; - char* hex = yytext+2; /* point to first true hex digit */ + char* hex = ncgtext+2; /* point to first true hex digit */ int xlen = (slen - 3); /* true hex length */ - yytext[slen-1] = '\0'; + ncgtext[slen-1] = '\0'; /* capture the tag string */ - tag = collecttag(yytext,&stag); + tag = collecttag(ncgtext,&stag); if(tag == NC_NAT) { sprintf(errstr,"Illegal integer suffix: %s",stag); yyerror(errstr); goto done; } - yytext[slen - strlen(stag)] = '\0'; + ncgtext[slen - strlen(stag)] = '\0'; if(xlen > 16) { /* truncate hi order digits */ hex += (xlen - 16); } @@ -2234,8 +2004,8 @@ YY_RULE_SETUP token = UINT64_CONST; break; default: /* should never happen */ - if (sscanf((char*)yytext, "%i", &uint32_val) != 1) { - sprintf(errstr,"bad unsigned int constant: %s",(char*)yytext); + if (sscanf((char*)ncgtext, "%i", &uint32_val) != 1) { + sprintf(errstr,"bad unsigned int constant: %s",(char*)ncgtext); yyerror(errstr); } token = UINT_CONST; @@ -2247,8 +2017,8 @@ case 38: YY_RULE_SETUP #line 491 "ncgen.l" { - if (sscanf((char*)yytext, "%le", &double_val) != 1) { - sprintf(errstr,"bad long or double constant: %s",(char*)yytext); + if (sscanf((char*)ncgtext, "%le", &double_val) != 1) { + sprintf(errstr,"bad long or double constant: %s",(char*)ncgtext); yyerror(errstr); } return lexdebug(DOUBLE_CONST); @@ -2258,8 +2028,8 @@ case 39: YY_RULE_SETUP #line 498 "ncgen.l" { - if (sscanf((char*)yytext, "%e", &float_val) != 1) { - sprintf(errstr,"bad float constant: %s",(char*)yytext); + if (sscanf((char*)ncgtext, "%e", &float_val) != 1) { + sprintf(errstr,"bad float constant: %s",(char*)ncgtext); yyerror(errstr); } return lexdebug(FLOAT_CONST); @@ -2270,7 +2040,7 @@ case 40: YY_RULE_SETUP #line 505 "ncgen.l" { - (void) sscanf((char*)&yytext[1],"%c",&byte_val); + (void) sscanf((char*)&ncgtext[1],"%c",&byte_val); return lexdebug(BYTE_CONST); } YY_BREAK @@ -2278,9 +2048,9 @@ case 41: YY_RULE_SETUP #line 509 "ncgen.l" { - int oct = unescapeoct(&yytext[2]); + int oct = unescapeoct(&ncgtext[2]); if(oct < 0) { - sprintf(errstr,"bad octal character constant: %s",(char*)yytext); + sprintf(errstr,"bad octal character constant: %s",(char*)ncgtext); yyerror(errstr); } byte_val = (unsigned int)oct; @@ -2291,9 +2061,9 @@ case 42: YY_RULE_SETUP #line 518 "ncgen.l" { - int hex = unescapehex(&yytext[3]); + int hex = unescapehex(&ncgtext[3]); if(byte_val < 0) { - sprintf(errstr,"bad hex character constant: %s",(char*)yytext); + sprintf(errstr,"bad hex character constant: %s",(char*)ncgtext); yyerror(errstr); } byte_val = (unsigned int)hex; @@ -2304,7 +2074,7 @@ case 43: YY_RULE_SETUP #line 527 "ncgen.l" { - switch ((char)yytext[2]) { + switch ((char)ncgtext[2]) { case 'a': byte_val = '\007'; break; /* not everyone under- * stands '\a' yet */ case 'b': byte_val = '\b'; break; @@ -2316,7 +2086,7 @@ YY_RULE_SETUP case '\\': byte_val = '\\'; break; case '?': byte_val = '\177'; break; case '\'': byte_val = '\''; break; - default: byte_val = (char)yytext[2]; + default: byte_val = (char)ncgtext[2]; } return lexdebug(BYTE_CONST); } @@ -2366,7 +2136,7 @@ case 48: YY_RULE_SETUP #line 570 "ncgen.l" {/* Note: this next rule will not work for UTF8 characters */ - return lexdebug(yytext[0]) ; + return lexdebug(ncgtext[0]) ; } YY_BREAK case 49: @@ -2374,7 +2144,7 @@ YY_RULE_SETUP #line 573 "ncgen.l" ECHO; YY_BREAK -#line 2377 "ncgenl.c" +#line 2148 "ncgenl.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(TEXT): yyterminate(); @@ -2392,15 +2162,15 @@ case YY_STATE_EOF(TEXT): { /* We're scanning a new file or input source. It's * possible that this happened because the user - * just pointed yyin at a new source and called - * yylex(). If so, then we have to assure + * just pointed ncgin at a new source and called + * ncglex(). If so, then we have to assure * consistency between YY_CURRENT_BUFFER and our * globals. Here is the right place to do so, because * this is the first action (other than possibly a * back-up) that will match for the new input source. */ (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; - YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = ncgin; YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; } @@ -2453,11 +2223,11 @@ case YY_STATE_EOF(TEXT): { (yy_did_buffer_switch_on_eof) = 0; - if ( yywrap( ) ) + if ( ncgwrap( ) ) { /* Note: because we've taken care in * yy_get_next_buffer() to have set up - * yytext, we can now set up + * ncgtext, we can now set up * yy_c_buf_p so that if some total * hoser (like flex itself) wants to * call the scanner after we return the @@ -2507,7 +2277,7 @@ case YY_STATE_EOF(TEXT): } /* end of action switch */ } /* end of scanning one token */ } /* end of user's declarations */ -} /* end of yylex */ +} /* end of ncglex */ /* yy_get_next_buffer - try to read in a new buffer * @@ -2585,8 +2355,7 @@ static int yy_get_next_buffer (void) b->yy_ch_buf = (char *) /* Include room in for 2 EOB chars. */ - yyrealloc( (void *) b->yy_ch_buf, - (yy_size_t) (b->yy_buf_size + 2) ); + ncgrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); } else /* Can't grow it, we don't own it. */ @@ -2618,7 +2387,7 @@ static int yy_get_next_buffer (void) if ( number_to_move == YY_MORE_ADJ ) { ret_val = EOB_ACT_END_OF_FILE; - yyrestart( yyin ); + ncgrestart(ncgin ); } else @@ -2635,12 +2404,9 @@ static int yy_get_next_buffer (void) if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { /* Extend the array by 50%, plus the number we really need. */ int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( - (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) ncgrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); - /* "- 2" to take care of EOB's */ - YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); } (yy_n_chars) += number_to_move; @@ -2673,9 +2439,9 @@ static int yy_get_next_buffer (void) { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 422 ) - yy_c = yy_meta[yy_c]; + yy_c = yy_meta[(unsigned int) yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c]; } return yy_current_state; @@ -2701,9 +2467,9 @@ static int yy_get_next_buffer (void) { yy_current_state = (int) yy_def[yy_current_state]; if ( yy_current_state >= 422 ) - yy_c = yy_meta[yy_c]; + yy_c = yy_meta[(unsigned int) yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c]; yy_is_jam = (yy_current_state == 421); return yy_is_jam ? 0 : yy_current_state; @@ -2717,7 +2483,7 @@ static int yy_get_next_buffer (void) yy_cp = (yy_c_buf_p); - /* undo effects of setting up yytext */ + /* undo effects of setting up ncgtext */ *yy_cp = (yy_hold_char); if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) @@ -2774,7 +2540,7 @@ static int yy_get_next_buffer (void) else { /* need more input */ - int offset = (int) ((yy_c_buf_p) - (yytext_ptr)); + int offset = (yy_c_buf_p) - (yytext_ptr); ++(yy_c_buf_p); switch ( yy_get_next_buffer( ) ) @@ -2791,13 +2557,13 @@ static int yy_get_next_buffer (void) */ /* Reset buffer status. */ - yyrestart( yyin ); + ncgrestart(ncgin ); /*FALLTHROUGH*/ case EOB_ACT_END_OF_FILE: { - if ( yywrap( ) ) + if ( ncgwrap( ) ) return 0; if ( ! (yy_did_buffer_switch_on_eof) ) @@ -2817,7 +2583,7 @@ static int yy_get_next_buffer (void) } c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ - *(yy_c_buf_p) = '\0'; /* preserve yytext */ + *(yy_c_buf_p) = '\0'; /* preserve ncgtext */ (yy_hold_char) = *++(yy_c_buf_p); return c; @@ -2829,32 +2595,32 @@ static int yy_get_next_buffer (void) * * @note This function does not reset the start condition to @c INITIAL . */ - void yyrestart (FILE * input_file ) + void ncgrestart (FILE * input_file ) { if ( ! YY_CURRENT_BUFFER ){ - yyensure_buffer_stack (); + ncgensure_buffer_stack (); YY_CURRENT_BUFFER_LVALUE = - yy_create_buffer( yyin, YY_BUF_SIZE ); + ncg_create_buffer(ncgin,YY_BUF_SIZE ); } - yy_init_buffer( YY_CURRENT_BUFFER, input_file ); - yy_load_buffer_state( ); + ncg_init_buffer(YY_CURRENT_BUFFER,input_file ); + ncg_load_buffer_state( ); } /** Switch to a different input buffer. * @param new_buffer The new input buffer. * */ - void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) + void ncg_switch_to_buffer (YY_BUFFER_STATE new_buffer ) { /* TODO. We should be able to replace this entire function body * with - * yypop_buffer_state(); - * yypush_buffer_state(new_buffer); + * ncgpop_buffer_state(); + * ncgpush_buffer_state(new_buffer); */ - yyensure_buffer_stack (); + ncgensure_buffer_stack (); if ( YY_CURRENT_BUFFER == new_buffer ) return; @@ -2867,21 +2633,21 @@ static int yy_get_next_buffer (void) } YY_CURRENT_BUFFER_LVALUE = new_buffer; - yy_load_buffer_state( ); + ncg_load_buffer_state( ); /* We don't actually know whether we did this switch during - * EOF (yywrap()) processing, but the only time this flag - * is looked at is after yywrap() is called, so it's safe + * EOF (ncgwrap()) processing, but the only time this flag + * is looked at is after ncgwrap() is called, so it's safe * to go ahead and always set it. */ (yy_did_buffer_switch_on_eof) = 1; } -static void yy_load_buffer_state (void) +static void ncg_load_buffer_state (void) { (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; - yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + ncgin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; (yy_hold_char) = *(yy_c_buf_p); } @@ -2891,35 +2657,35 @@ static void yy_load_buffer_state (void) * * @return the allocated buffer state. */ - YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) + YY_BUFFER_STATE ncg_create_buffer (FILE * file, int size ) { YY_BUFFER_STATE b; - b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) ncgalloc(sizeof( struct yy_buffer_state ) ); if ( ! b ) - YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + YY_FATAL_ERROR( "out of dynamic memory in ncg_create_buffer()" ); - b->yy_buf_size = size; + b->yy_buf_size = (yy_size_t)size; /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. */ - b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); + b->yy_ch_buf = (char *) ncgalloc(b->yy_buf_size + 2 ); if ( ! b->yy_ch_buf ) - YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + YY_FATAL_ERROR( "out of dynamic memory in ncg_create_buffer()" ); b->yy_is_our_buffer = 1; - yy_init_buffer( b, file ); + ncg_init_buffer(b,file ); return b; } /** Destroy the buffer. - * @param b a buffer created with yy_create_buffer() + * @param b a buffer created with ncg_create_buffer() * */ - void yy_delete_buffer (YY_BUFFER_STATE b ) + void ncg_delete_buffer (YY_BUFFER_STATE b ) { if ( ! b ) @@ -2929,27 +2695,27 @@ static void yy_load_buffer_state (void) YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; if ( b->yy_is_our_buffer ) - yyfree( (void *) b->yy_ch_buf ); + ncgfree((void *) b->yy_ch_buf ); - yyfree( (void *) b ); + ncgfree((void *) b ); } /* Initializes or reinitializes a buffer. * This function is sometimes called more than once on the same buffer, - * such as during a yyrestart() or at EOF. + * such as during a ncgrestart() or at EOF. */ - static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) + static void ncg_init_buffer (YY_BUFFER_STATE b, FILE * file ) { int oerrno = errno; - yy_flush_buffer( b ); + ncg_flush_buffer(b ); b->yy_input_file = file; b->yy_fill_buffer = 1; - /* If b is the current buffer, then yy_init_buffer was _probably_ - * called from yyrestart() or through yy_get_next_buffer. + /* If b is the current buffer, then ncg_init_buffer was _probably_ + * called from ncgrestart() or through yy_get_next_buffer. * In that case, we don't want to reset the lineno or column. */ if (b != YY_CURRENT_BUFFER){ @@ -2966,7 +2732,7 @@ static void yy_load_buffer_state (void) * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. * */ - void yy_flush_buffer (YY_BUFFER_STATE b ) + void ncg_flush_buffer (YY_BUFFER_STATE b ) { if ( ! b ) return; @@ -2986,7 +2752,7 @@ static void yy_load_buffer_state (void) b->yy_buffer_status = YY_BUFFER_NEW; if ( b == YY_CURRENT_BUFFER ) - yy_load_buffer_state( ); + ncg_load_buffer_state( ); } /** Pushes the new state onto the stack. The new state becomes @@ -2995,14 +2761,14 @@ static void yy_load_buffer_state (void) * @param new_buffer The new state. * */ -void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) +void ncgpush_buffer_state (YY_BUFFER_STATE new_buffer ) { if (new_buffer == NULL) return; - yyensure_buffer_stack(); + ncgensure_buffer_stack(); - /* This block is copied from yy_switch_to_buffer. */ + /* This block is copied from ncg_switch_to_buffer. */ if ( YY_CURRENT_BUFFER ) { /* Flush out information for old buffer. */ @@ -3016,8 +2782,8 @@ void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) (yy_buffer_stack_top)++; YY_CURRENT_BUFFER_LVALUE = new_buffer; - /* copied from yy_switch_to_buffer. */ - yy_load_buffer_state( ); + /* copied from ncg_switch_to_buffer. */ + ncg_load_buffer_state( ); (yy_did_buffer_switch_on_eof) = 1; } @@ -3025,18 +2791,18 @@ void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) * The next element becomes the new top. * */ -void yypop_buffer_state (void) +void ncgpop_buffer_state (void) { if (!YY_CURRENT_BUFFER) return; - yy_delete_buffer(YY_CURRENT_BUFFER ); + ncg_delete_buffer(YY_CURRENT_BUFFER ); YY_CURRENT_BUFFER_LVALUE = NULL; if ((yy_buffer_stack_top) > 0) --(yy_buffer_stack_top); if (YY_CURRENT_BUFFER) { - yy_load_buffer_state( ); + ncg_load_buffer_state( ); (yy_did_buffer_switch_on_eof) = 1; } } @@ -3044,9 +2810,9 @@ void yypop_buffer_state (void) /* Allocates the stack if it does not exist. * Guarantees space for at least one push. */ -static void yyensure_buffer_stack (void) +static void ncgensure_buffer_stack (void) { - yy_size_t num_to_alloc; + int num_to_alloc; if (!(yy_buffer_stack)) { @@ -3055,11 +2821,11 @@ static void yyensure_buffer_stack (void) * immediate realloc on the next call. */ num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ - (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc + (yy_buffer_stack) = (struct yy_buffer_state**)ncgalloc (num_to_alloc * sizeof(struct yy_buffer_state*) ); if ( ! (yy_buffer_stack) ) - YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + YY_FATAL_ERROR( "out of dynamic memory in ncgensure_buffer_stack()" ); memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); @@ -3074,12 +2840,12 @@ static void yyensure_buffer_stack (void) yy_size_t grow_size = 8 /* arbitrary grow size */; num_to_alloc = (yy_buffer_stack_max) + grow_size; - (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc + (yy_buffer_stack) = (struct yy_buffer_state**)ncgrealloc ((yy_buffer_stack), num_to_alloc * sizeof(struct yy_buffer_state*) ); if ( ! (yy_buffer_stack) ) - YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + YY_FATAL_ERROR( "out of dynamic memory in ncgensure_buffer_stack()" ); /* zero only the new slots.*/ memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); @@ -3093,7 +2859,7 @@ static void yyensure_buffer_stack (void) * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) +YY_BUFFER_STATE ncg_scan_buffer (char * base, yy_size_t size ) { YY_BUFFER_STATE b; @@ -3103,11 +2869,11 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) /* They forgot to leave room for the EOB's. */ return NULL; - b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) ncgalloc(sizeof( struct yy_buffer_state ) ); if ( ! b ) - YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); + YY_FATAL_ERROR( "out of dynamic memory in ncg_scan_buffer()" ); - b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */ + b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ b->yy_buf_pos = b->yy_ch_buf = base; b->yy_is_our_buffer = 0; b->yy_input_file = NULL; @@ -3117,33 +2883,33 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) b->yy_fill_buffer = 0; b->yy_buffer_status = YY_BUFFER_NEW; - yy_switch_to_buffer( b ); + ncg_switch_to_buffer(b ); return b; } -/** Setup the input buffer state to scan a string. The next call to yylex() will +/** Setup the input buffer state to scan a string. The next call to ncglex() will * scan from a @e copy of @a str. * @param yystr a NUL-terminated string to scan * * @return the newly allocated buffer state object. * @note If you want to scan bytes that may contain NUL values, then use - * yy_scan_bytes() instead. + * ncg_scan_bytes() instead. */ -YY_BUFFER_STATE yy_scan_string (const char * yystr ) +YY_BUFFER_STATE ncg_scan_string (yyconst char * yystr ) { - return yy_scan_bytes( yystr, (int) strlen(yystr) ); + return ncg_scan_bytes(yystr,(int) strlen(yystr) ); } -/** Setup the input buffer state to scan the given bytes. The next call to yylex() will +/** Setup the input buffer state to scan the given bytes. The next call to ncglex() will * scan from a @e copy of @a bytes. * @param yybytes the byte buffer to scan * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) +YY_BUFFER_STATE ncg_scan_bytes (yyconst char * yybytes, int _yybytes_len ) { YY_BUFFER_STATE b; char *buf; @@ -3152,18 +2918,18 @@ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) /* Get memory for full buffer, including space for trailing EOB's. */ n = (yy_size_t) (_yybytes_len + 2); - buf = (char *) yyalloc( n ); + buf = (char *) ncgalloc(n ); if ( ! buf ) - YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); + YY_FATAL_ERROR( "out of dynamic memory in ncg_scan_bytes()" ); for ( i = 0; i < _yybytes_len; ++i ) buf[i] = yybytes[i]; buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; - b = yy_scan_buffer( buf, n ); + b = ncg_scan_buffer(buf,n ); if ( ! b ) - YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); + YY_FATAL_ERROR( "bad buffer in ncg_scan_bytes()" ); /* It's okay to grow etc. this buffer, and we should throw it * away when we're done. @@ -3177,9 +2943,9 @@ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) #define YY_EXIT_FAILURE 2 #endif -static void yynoreturn yy_fatal_error (const char* msg ) +static void yynoreturn yy_fatal_error (yyconst char* msg ) { - fprintf( stderr, "%s\n", msg ); + (void) fprintf( stderr, "%s\n", msg ); exit( YY_EXIT_FAILURE ); } @@ -3189,14 +2955,14 @@ static void yynoreturn yy_fatal_error (const char* msg ) #define yyless(n) \ do \ { \ - /* Undo effects of setting up yytext. */ \ + /* Undo effects of setting up ncgtext. */ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ - yytext[yyleng] = (yy_hold_char); \ - (yy_c_buf_p) = yytext + yyless_macro_arg; \ + ncgtext[ncgleng] = (yy_hold_char); \ + (yy_c_buf_p) = ncgtext + yyless_macro_arg; \ (yy_hold_char) = *(yy_c_buf_p); \ *(yy_c_buf_p) = '\0'; \ - yyleng = yyless_macro_arg; \ + ncgleng = yyless_macro_arg; \ } \ while ( 0 ) @@ -3205,85 +2971,85 @@ static void yynoreturn yy_fatal_error (const char* msg ) /** Get the current line number. * */ -int yyget_lineno (void) +int ncgget_lineno (void) { - return yylineno; + return ncglineno; } /** Get the input stream. * */ -FILE *yyget_in (void) +FILE *ncgget_in (void) { - return yyin; + return ncgin; } /** Get the output stream. * */ -FILE *yyget_out (void) +FILE *ncgget_out (void) { - return yyout; + return ncgout; } /** Get the length of the current token. * */ -int yyget_leng (void) +int ncgget_leng (void) { - return yyleng; + return ncgleng; } /** Get the current token. * */ -char *yyget_text (void) +char *ncgget_text (void) { - return yytext; + return ncgtext; } /** Set the current line number. * @param _line_number line number * */ -void yyset_lineno (int _line_number ) +void ncgset_lineno (int _line_number ) { - yylineno = _line_number; + ncglineno = _line_number; } /** Set the input stream. This does not discard the current * input buffer. * @param _in_str A readable stream. * - * @see yy_switch_to_buffer + * @see ncg_switch_to_buffer */ -void yyset_in (FILE * _in_str ) +void ncgset_in (FILE * _in_str ) { - yyin = _in_str ; + ncgin = _in_str ; } -void yyset_out (FILE * _out_str ) +void ncgset_out (FILE * _out_str ) { - yyout = _out_str ; + ncgout = _out_str ; } -int yyget_debug (void) +int ncgget_debug (void) { - return yy_flex_debug; + return ncg_flex_debug; } -void yyset_debug (int _bdebug ) +void ncgset_debug (int _bdebug ) { - yy_flex_debug = _bdebug ; + ncg_flex_debug = _bdebug ; } static int yy_init_globals (void) { /* Initialization is the same as for the non-reentrant scanner. - * This function is called from yylex_destroy(), so don't allocate here. + * This function is called from ncglex_destroy(), so don't allocate here. */ (yy_buffer_stack) = NULL; @@ -3295,36 +3061,36 @@ static int yy_init_globals (void) /* Defined in main.c */ #ifdef YY_STDINIT - yyin = stdin; - yyout = stdout; + ncgin = stdin; + ncgout = stdout; #else - yyin = NULL; - yyout = NULL; + ncgin = NULL; + ncgout = NULL; #endif /* For future reference: Set errno on error, since we are called by - * yylex_init() + * ncglex_init() */ return 0; } -/* yylex_destroy is for both reentrant and non-reentrant scanners. */ -int yylex_destroy (void) +/* ncglex_destroy is for both reentrant and non-reentrant scanners. */ +int ncglex_destroy (void) { /* Pop the buffer stack, destroying each element. */ while(YY_CURRENT_BUFFER){ - yy_delete_buffer( YY_CURRENT_BUFFER ); + ncg_delete_buffer(YY_CURRENT_BUFFER ); YY_CURRENT_BUFFER_LVALUE = NULL; - yypop_buffer_state(); + ncgpop_buffer_state(); } /* Destroy the stack itself. */ - yyfree((yy_buffer_stack) ); + ncgfree((yy_buffer_stack) ); (yy_buffer_stack) = NULL; /* Reset the globals. This is important in a non-reentrant scanner so the next time - * yylex() is called, initialization will occur. */ + * ncglex() is called, initialization will occur. */ yy_init_globals( ); return 0; @@ -3335,7 +3101,7 @@ int yylex_destroy (void) */ #ifndef yytext_ptr -static void yy_flex_strncpy (char* s1, const char * s2, int n ) +static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) { int i; @@ -3345,7 +3111,7 @@ static void yy_flex_strncpy (char* s1, const char * s2, int n ) #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (const char * s ) +static int yy_flex_strlen (yyconst char * s ) { int n; for ( n = 0; s[n]; ++n ) @@ -3355,12 +3121,12 @@ static int yy_flex_strlen (const char * s ) } #endif -void *yyalloc (yy_size_t size ) +void *ncgalloc (yy_size_t size ) { return malloc(size); } -void *yyrealloc (void * ptr, yy_size_t size ) +void *ncgrealloc (void * ptr, yy_size_t size ) { /* The cast to (char *) in the following accommodates both @@ -3373,22 +3139,23 @@ void *yyrealloc (void * ptr, yy_size_t size ) return realloc(ptr, size); } -void yyfree (void * ptr ) +void ncgfree (void * ptr ) { - free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ + free( (char *) ptr ); /* see ncgrealloc() for (char *) cast */ } #define YYTABLES_NAME "yytables" #line 573 "ncgen.l" + static int lexdebug(int token) { if(debug >= 2) { - char* text = yytext; - text[yyleng] = 0; + char* text = ncgtext; + text[ncgleng] = 0; fprintf(stderr,"Token=%d |%s| line=%d\n",token,text,lineno); } return token; diff --git a/ncgen/ncgeny.c b/ncgen/ncgeny.c index 111704804..faaa238a4 100644 --- a/ncgen/ncgeny.c +++ b/ncgen/ncgeny.c @@ -79,7 +79,9 @@ static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $"; #include "ncoffsets.h" #include "ncgeny.h" #include "ncgen.h" +#ifdef USE_NETCDF4 #include "ncfilter.h" +#endif /* Following are in ncdump (for now)*/ /* Need some (unused) definitions to get it to compile */ @@ -91,8 +93,8 @@ static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $"; #define YY_NO_INPUT 1 /* True if string a equals string b*/ -#ifndef STREQ -#define STREQ(a, b) (*(a) == *(b) && strcmp((a), (b)) == 0) +#ifndef NCSTREQ +#define NCSTREQ(a, b) (*(a) == *(b) && strcmp((a), (b)) == 0) #endif #define VLENSIZE (sizeof(nc_vlen_t)) #define MAXFLOATDIM 4294967295.0 @@ -202,7 +204,7 @@ static void yyerror(fmt,va_alist) const char* fmt; va_dcl; extern int lex_init(void); -#line 206 "ncgeny.c" /* yacc.c:339 */ +#line 208 "ncgeny.c" /* yacc.c:339 */ # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -298,7 +300,7 @@ extern int ncgdebug; union YYSTYPE { -#line 145 "ncgen.y" /* yacc.c:355 */ +#line 147 "ncgen.y" /* yacc.c:355 */ Symbol* sym; unsigned long size; /* allow for zero size to indicate e.g. UNLIMITED*/ @@ -307,7 +309,7 @@ int nctype; /* for tracking attribute list type*/ Datalist* datalist; NCConstant constant; -#line 311 "ncgeny.c" /* yacc.c:355 */ +#line 313 "ncgeny.c" /* yacc.c:355 */ }; typedef union YYSTYPE YYSTYPE; @@ -324,7 +326,7 @@ int ncgparse (void); /* Copy the second part of user declarations. */ -#line 328 "ncgeny.c" /* yacc.c:358 */ +#line 330 "ncgeny.c" /* yacc.c:358 */ #ifdef short # undef short @@ -627,22 +629,22 @@ static const yytype_uint8 yytranslate[] = /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 227, 227, 233, 235, 242, 249, 249, 252, 261, - 251, 266, 267, 268, 272, 272, 274, 284, 284, 287, - 288, 289, 290, 293, 293, 296, 326, 328, 345, 354, - 366, 380, 413, 414, 417, 431, 432, 433, 434, 435, - 436, 437, 438, 439, 440, 441, 442, 445, 446, 447, - 450, 451, 454, 454, 456, 457, 461, 468, 478, 490, - 491, 492, 495, 496, 499, 499, 501, 523, 527, 531, - 558, 559, 562, 563, 567, 581, 585, 590, 619, 620, - 624, 625, 630, 640, 660, 671, 682, 701, 708, 708, - 711, 713, 715, 717, 719, 728, 739, 741, 743, 745, - 747, 749, 751, 753, 755, 757, 759, 764, 771, 780, - 781, 782, 785, 786, 789, 793, 794, 798, 802, 803, - 808, 809, 813, 814, 815, 816, 817, 818, 822, 826, - 830, 832, 837, 838, 839, 840, 841, 842, 843, 844, - 845, 846, 847, 848, 852, 853, 857, 859, 861, 863, - 868, 872, 873, 879 + 0, 229, 229, 235, 237, 244, 251, 251, 254, 263, + 253, 268, 269, 270, 274, 274, 276, 286, 286, 289, + 290, 291, 292, 295, 295, 298, 328, 330, 347, 356, + 368, 382, 415, 416, 419, 433, 434, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 447, 448, 449, + 452, 453, 456, 456, 458, 459, 463, 470, 480, 492, + 493, 494, 497, 498, 501, 501, 503, 525, 529, 533, + 560, 561, 564, 565, 569, 583, 587, 592, 621, 622, + 626, 627, 632, 642, 662, 673, 684, 703, 710, 710, + 713, 715, 717, 719, 721, 730, 741, 743, 745, 747, + 749, 751, 753, 755, 757, 759, 761, 766, 773, 782, + 783, 784, 787, 788, 791, 795, 796, 800, 804, 805, + 810, 811, 815, 816, 817, 818, 819, 820, 824, 828, + 832, 834, 839, 840, 841, 842, 843, 844, 845, 846, + 847, 848, 849, 850, 854, 855, 859, 861, 863, 865, + 870, 874, 875, 881 }; #endif @@ -1634,19 +1636,19 @@ yyreduce: switch (yyn) { case 2: -#line 230 "ncgen.y" /* yacc.c:1646 */ +#line 232 "ncgen.y" /* yacc.c:1646 */ {if (error_count > 0) YYABORT;} -#line 1640 "ncgeny.c" /* yacc.c:1646 */ +#line 1642 "ncgeny.c" /* yacc.c:1646 */ break; case 3: -#line 233 "ncgen.y" /* yacc.c:1646 */ +#line 235 "ncgen.y" /* yacc.c:1646 */ {createrootgroup(datasetname);} -#line 1646 "ncgeny.c" /* yacc.c:1646 */ +#line 1648 "ncgeny.c" /* yacc.c:1646 */ break; case 8: -#line 252 "ncgen.y" /* yacc.c:1646 */ +#line 254 "ncgen.y" /* yacc.c:1646 */ { Symbol* id = (yyvsp[-1].sym); markcdf4("Group specification"); @@ -1654,29 +1656,29 @@ yyreduce: yyerror("duplicate group declaration within parent group for %s", id->name); } -#line 1658 "ncgeny.c" /* yacc.c:1646 */ +#line 1660 "ncgeny.c" /* yacc.c:1646 */ break; case 9: -#line 261 "ncgen.y" /* yacc.c:1646 */ +#line 263 "ncgen.y" /* yacc.c:1646 */ {listpop(groupstack);} -#line 1664 "ncgeny.c" /* yacc.c:1646 */ +#line 1666 "ncgeny.c" /* yacc.c:1646 */ break; case 12: -#line 267 "ncgen.y" /* yacc.c:1646 */ +#line 269 "ncgen.y" /* yacc.c:1646 */ {} -#line 1670 "ncgeny.c" /* yacc.c:1646 */ +#line 1672 "ncgeny.c" /* yacc.c:1646 */ break; case 13: -#line 269 "ncgen.y" /* yacc.c:1646 */ +#line 271 "ncgen.y" /* yacc.c:1646 */ {markcdf4("Type specification");} -#line 1676 "ncgeny.c" /* yacc.c:1646 */ +#line 1678 "ncgeny.c" /* yacc.c:1646 */ break; case 16: -#line 275 "ncgen.y" /* yacc.c:1646 */ +#line 277 "ncgen.y" /* yacc.c:1646 */ { /* Use when defining a type */ (yyvsp[0].sym)->objectclass = NC_TYPE; if(dupobjectcheck(NC_TYPE,(yyvsp[0].sym))) @@ -1684,23 +1686,23 @@ yyreduce: (yyvsp[0].sym)->name); listpush(typdefs,(void*)(yyvsp[0].sym)); } -#line 1688 "ncgeny.c" /* yacc.c:1646 */ +#line 1690 "ncgeny.c" /* yacc.c:1646 */ break; case 17: -#line 284 "ncgen.y" /* yacc.c:1646 */ +#line 286 "ncgen.y" /* yacc.c:1646 */ {} -#line 1694 "ncgeny.c" /* yacc.c:1646 */ +#line 1696 "ncgeny.c" /* yacc.c:1646 */ break; case 18: -#line 284 "ncgen.y" /* yacc.c:1646 */ +#line 286 "ncgen.y" /* yacc.c:1646 */ {} -#line 1700 "ncgeny.c" /* yacc.c:1646 */ +#line 1702 "ncgeny.c" /* yacc.c:1646 */ break; case 25: -#line 298 "ncgen.y" /* yacc.c:1646 */ +#line 300 "ncgen.y" /* yacc.c:1646 */ { int i; addtogroup((yyvsp[-3].sym)); /* sets prefix*/ @@ -1727,17 +1729,17 @@ yyreduce: } listsetlength(stack,stackbase);/* remove stack nodes*/ } -#line 1731 "ncgeny.c" /* yacc.c:1646 */ +#line 1733 "ncgeny.c" /* yacc.c:1646 */ break; case 26: -#line 327 "ncgen.y" /* yacc.c:1646 */ +#line 329 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack); listpush(stack,(void*)(yyvsp[0].sym));} -#line 1737 "ncgeny.c" /* yacc.c:1646 */ +#line 1739 "ncgeny.c" /* yacc.c:1646 */ break; case 27: -#line 329 "ncgen.y" /* yacc.c:1646 */ +#line 331 "ncgen.y" /* yacc.c:1646 */ { int i; (yyval.mark)=(yyvsp[-2].mark); @@ -1752,22 +1754,22 @@ yyreduce: } listpush(stack,(void*)(yyvsp[0].sym)); } -#line 1756 "ncgeny.c" /* yacc.c:1646 */ +#line 1758 "ncgeny.c" /* yacc.c:1646 */ break; case 28: -#line 346 "ncgen.y" /* yacc.c:1646 */ +#line 348 "ncgen.y" /* yacc.c:1646 */ { (yyvsp[-2].sym)->objectclass=NC_TYPE; (yyvsp[-2].sym)->subclass=NC_ECONST; (yyvsp[-2].sym)->typ.econst=(yyvsp[0].constant); (yyval.sym)=(yyvsp[-2].sym); } -#line 1767 "ncgeny.c" /* yacc.c:1646 */ +#line 1769 "ncgeny.c" /* yacc.c:1646 */ break; case 29: -#line 355 "ncgen.y" /* yacc.c:1646 */ +#line 357 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_OPAQUE); addtogroup((yyvsp[0].sym)); /*sets prefix*/ @@ -1777,11 +1779,11 @@ yyreduce: (yyvsp[0].sym)->typ.size=int32_val; (yyvsp[0].sym)->typ.alignment=nctypealignment(NC_OPAQUE); } -#line 1781 "ncgeny.c" /* yacc.c:1646 */ +#line 1783 "ncgeny.c" /* yacc.c:1646 */ break; case 30: -#line 367 "ncgen.y" /* yacc.c:1646 */ +#line 369 "ncgen.y" /* yacc.c:1646 */ { Symbol* basetype = (yyvsp[-4].sym); vercheck(NC_VLEN); @@ -1793,11 +1795,11 @@ yyreduce: (yyvsp[0].sym)->typ.size=VLENSIZE; (yyvsp[0].sym)->typ.alignment=nctypealignment(NC_VLEN); } -#line 1797 "ncgeny.c" /* yacc.c:1646 */ +#line 1799 "ncgeny.c" /* yacc.c:1646 */ break; case 31: -#line 381 "ncgen.y" /* yacc.c:1646 */ +#line 383 "ncgen.y" /* yacc.c:1646 */ { int i,j; vercheck(NC_COMPOUND); @@ -1827,23 +1829,23 @@ yyreduce: } listsetlength(stack,stackbase);/* remove stack nodes*/ } -#line 1831 "ncgeny.c" /* yacc.c:1646 */ +#line 1833 "ncgeny.c" /* yacc.c:1646 */ break; case 32: -#line 413 "ncgen.y" /* yacc.c:1646 */ +#line 415 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-1].mark);} -#line 1837 "ncgeny.c" /* yacc.c:1646 */ +#line 1839 "ncgeny.c" /* yacc.c:1646 */ break; case 33: -#line 414 "ncgen.y" /* yacc.c:1646 */ +#line 416 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-2].mark);} -#line 1843 "ncgeny.c" /* yacc.c:1646 */ +#line 1845 "ncgeny.c" /* yacc.c:1646 */ break; case 34: -#line 418 "ncgen.y" /* yacc.c:1646 */ +#line 420 "ncgen.y" /* yacc.c:1646 */ { int i; (yyval.mark)=(yyvsp[0].mark); @@ -1855,118 +1857,118 @@ yyreduce: f->typ.basetype = (yyvsp[-1].sym); } } -#line 1859 "ncgeny.c" /* yacc.c:1646 */ +#line 1861 "ncgeny.c" /* yacc.c:1646 */ break; case 35: -#line 431 "ncgen.y" /* yacc.c:1646 */ +#line 433 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym) = primsymbols[NC_CHAR]; } -#line 1865 "ncgeny.c" /* yacc.c:1646 */ +#line 1867 "ncgeny.c" /* yacc.c:1646 */ break; case 36: -#line 432 "ncgen.y" /* yacc.c:1646 */ +#line 434 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym) = primsymbols[NC_BYTE]; } -#line 1871 "ncgeny.c" /* yacc.c:1646 */ +#line 1873 "ncgeny.c" /* yacc.c:1646 */ break; case 37: -#line 433 "ncgen.y" /* yacc.c:1646 */ +#line 435 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym) = primsymbols[NC_SHORT]; } -#line 1877 "ncgeny.c" /* yacc.c:1646 */ +#line 1879 "ncgeny.c" /* yacc.c:1646 */ break; case 38: -#line 434 "ncgen.y" /* yacc.c:1646 */ +#line 436 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym) = primsymbols[NC_INT]; } -#line 1883 "ncgeny.c" /* yacc.c:1646 */ +#line 1885 "ncgeny.c" /* yacc.c:1646 */ break; case 39: -#line 435 "ncgen.y" /* yacc.c:1646 */ +#line 437 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym) = primsymbols[NC_FLOAT]; } -#line 1889 "ncgeny.c" /* yacc.c:1646 */ +#line 1891 "ncgeny.c" /* yacc.c:1646 */ break; case 40: -#line 436 "ncgen.y" /* yacc.c:1646 */ +#line 438 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym) = primsymbols[NC_DOUBLE]; } -#line 1895 "ncgeny.c" /* yacc.c:1646 */ +#line 1897 "ncgeny.c" /* yacc.c:1646 */ break; case 41: -#line 437 "ncgen.y" /* yacc.c:1646 */ +#line 439 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_UBYTE); (yyval.sym) = primsymbols[NC_UBYTE]; } -#line 1901 "ncgeny.c" /* yacc.c:1646 */ +#line 1903 "ncgeny.c" /* yacc.c:1646 */ break; case 42: -#line 438 "ncgen.y" /* yacc.c:1646 */ +#line 440 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_USHORT); (yyval.sym) = primsymbols[NC_USHORT]; } -#line 1907 "ncgeny.c" /* yacc.c:1646 */ +#line 1909 "ncgeny.c" /* yacc.c:1646 */ break; case 43: -#line 439 "ncgen.y" /* yacc.c:1646 */ +#line 441 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_UINT); (yyval.sym) = primsymbols[NC_UINT]; } -#line 1913 "ncgeny.c" /* yacc.c:1646 */ +#line 1915 "ncgeny.c" /* yacc.c:1646 */ break; case 44: -#line 440 "ncgen.y" /* yacc.c:1646 */ +#line 442 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_INT64); (yyval.sym) = primsymbols[NC_INT64]; } -#line 1919 "ncgeny.c" /* yacc.c:1646 */ +#line 1921 "ncgeny.c" /* yacc.c:1646 */ break; case 45: -#line 441 "ncgen.y" /* yacc.c:1646 */ +#line 443 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_UINT64); (yyval.sym) = primsymbols[NC_UINT64]; } -#line 1925 "ncgeny.c" /* yacc.c:1646 */ +#line 1927 "ncgeny.c" /* yacc.c:1646 */ break; case 46: -#line 442 "ncgen.y" /* yacc.c:1646 */ +#line 444 "ncgen.y" /* yacc.c:1646 */ { vercheck(NC_STRING); (yyval.sym) = primsymbols[NC_STRING]; } -#line 1931 "ncgeny.c" /* yacc.c:1646 */ +#line 1933 "ncgeny.c" /* yacc.c:1646 */ break; case 48: -#line 446 "ncgen.y" /* yacc.c:1646 */ +#line 448 "ncgen.y" /* yacc.c:1646 */ {} -#line 1937 "ncgeny.c" /* yacc.c:1646 */ +#line 1939 "ncgeny.c" /* yacc.c:1646 */ break; case 49: -#line 447 "ncgen.y" /* yacc.c:1646 */ +#line 449 "ncgen.y" /* yacc.c:1646 */ {} -#line 1943 "ncgeny.c" /* yacc.c:1646 */ +#line 1945 "ncgeny.c" /* yacc.c:1646 */ break; case 52: -#line 454 "ncgen.y" /* yacc.c:1646 */ +#line 456 "ncgen.y" /* yacc.c:1646 */ {} -#line 1949 "ncgeny.c" /* yacc.c:1646 */ +#line 1951 "ncgeny.c" /* yacc.c:1646 */ break; case 53: -#line 454 "ncgen.y" /* yacc.c:1646 */ +#line 456 "ncgen.y" /* yacc.c:1646 */ {} -#line 1955 "ncgeny.c" /* yacc.c:1646 */ +#line 1957 "ncgeny.c" /* yacc.c:1646 */ break; case 56: -#line 462 "ncgen.y" /* yacc.c:1646 */ +#line 464 "ncgen.y" /* yacc.c:1646 */ { (yyvsp[-2].sym)->dim.declsize = (size_t)extractint((yyvsp[0].constant)); #ifdef GENDEBUG1 fprintf(stderr,"dimension: %s = %llu\n",(yyvsp[-2].sym)->name,(unsigned long long)(yyvsp[-2].sym)->dim.declsize); #endif } -#line 1966 "ncgeny.c" /* yacc.c:1646 */ +#line 1968 "ncgeny.c" /* yacc.c:1646 */ break; case 57: -#line 469 "ncgen.y" /* yacc.c:1646 */ +#line 471 "ncgen.y" /* yacc.c:1646 */ { (yyvsp[-2].sym)->dim.declsize = NC_UNLIMITED; (yyvsp[-2].sym)->dim.isunlimited = 1; @@ -1974,11 +1976,11 @@ fprintf(stderr,"dimension: %s = %llu\n",(yyvsp[-2].sym)->name,(unsigned long lon fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); #endif } -#line 1978 "ncgeny.c" /* yacc.c:1646 */ +#line 1980 "ncgeny.c" /* yacc.c:1646 */ break; case 58: -#line 479 "ncgen.y" /* yacc.c:1646 */ +#line 481 "ncgen.y" /* yacc.c:1646 */ { (yyvsp[0].sym)->objectclass=NC_DIM; if(dupobjectcheck(NC_DIM,(yyvsp[0].sym))) @@ -1988,35 +1990,35 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); (yyval.sym)=(yyvsp[0].sym); listpush(dimdefs,(void*)(yyvsp[0].sym)); } -#line 1992 "ncgeny.c" /* yacc.c:1646 */ +#line 1994 "ncgeny.c" /* yacc.c:1646 */ break; case 60: -#line 491 "ncgen.y" /* yacc.c:1646 */ +#line 493 "ncgen.y" /* yacc.c:1646 */ {} -#line 1998 "ncgeny.c" /* yacc.c:1646 */ +#line 2000 "ncgeny.c" /* yacc.c:1646 */ break; case 61: -#line 492 "ncgen.y" /* yacc.c:1646 */ +#line 494 "ncgen.y" /* yacc.c:1646 */ {} -#line 2004 "ncgeny.c" /* yacc.c:1646 */ +#line 2006 "ncgeny.c" /* yacc.c:1646 */ break; case 64: -#line 499 "ncgen.y" /* yacc.c:1646 */ +#line 501 "ncgen.y" /* yacc.c:1646 */ {} -#line 2010 "ncgeny.c" /* yacc.c:1646 */ +#line 2012 "ncgeny.c" /* yacc.c:1646 */ break; case 65: -#line 499 "ncgen.y" /* yacc.c:1646 */ +#line 501 "ncgen.y" /* yacc.c:1646 */ {} -#line 2016 "ncgeny.c" /* yacc.c:1646 */ +#line 2018 "ncgeny.c" /* yacc.c:1646 */ break; case 66: -#line 502 "ncgen.y" /* yacc.c:1646 */ +#line 504 "ncgen.y" /* yacc.c:1646 */ { int i; stackbase=(yyvsp[0].mark); @@ -2036,25 +2038,25 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); } listsetlength(stack,stackbase);/* remove stack nodes*/ } -#line 2040 "ncgeny.c" /* yacc.c:1646 */ +#line 2042 "ncgeny.c" /* yacc.c:1646 */ break; case 67: -#line 524 "ncgen.y" /* yacc.c:1646 */ +#line 526 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack); listpush(stack,(void*)(yyvsp[0].sym)); } -#line 2048 "ncgeny.c" /* yacc.c:1646 */ +#line 2050 "ncgeny.c" /* yacc.c:1646 */ break; case 68: -#line 528 "ncgen.y" /* yacc.c:1646 */ +#line 530 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-2].mark); listpush(stack,(void*)(yyvsp[0].sym));} -#line 2054 "ncgeny.c" /* yacc.c:1646 */ +#line 2056 "ncgeny.c" /* yacc.c:1646 */ break; case 69: -#line 532 "ncgen.y" /* yacc.c:1646 */ +#line 534 "ncgen.y" /* yacc.c:1646 */ { int i; Dimset dimset; @@ -2079,35 +2081,35 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); (yyvsp[-1].sym)->objectclass=NC_VAR; listsetlength(stack,stackbase);/* remove stack nodes*/ } -#line 2083 "ncgeny.c" /* yacc.c:1646 */ +#line 2085 "ncgeny.c" /* yacc.c:1646 */ break; case 70: -#line 558 "ncgen.y" /* yacc.c:1646 */ +#line 560 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack);} -#line 2089 "ncgeny.c" /* yacc.c:1646 */ +#line 2091 "ncgeny.c" /* yacc.c:1646 */ break; case 71: -#line 559 "ncgen.y" /* yacc.c:1646 */ +#line 561 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-1].mark);} -#line 2095 "ncgeny.c" /* yacc.c:1646 */ +#line 2097 "ncgeny.c" /* yacc.c:1646 */ break; case 72: -#line 562 "ncgen.y" /* yacc.c:1646 */ +#line 564 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack); listpush(stack,(void*)(yyvsp[0].sym));} -#line 2101 "ncgeny.c" /* yacc.c:1646 */ +#line 2103 "ncgeny.c" /* yacc.c:1646 */ break; case 73: -#line 564 "ncgen.y" /* yacc.c:1646 */ +#line 566 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-2].mark); listpush(stack,(void*)(yyvsp[0].sym));} -#line 2107 "ncgeny.c" /* yacc.c:1646 */ +#line 2109 "ncgeny.c" /* yacc.c:1646 */ break; case 74: -#line 568 "ncgen.y" /* yacc.c:1646 */ +#line 570 "ncgen.y" /* yacc.c:1646 */ {Symbol* dimsym = (yyvsp[0].sym); dimsym->objectclass = NC_DIM; /* Find the actual dimension*/ @@ -2118,25 +2120,25 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); } (yyval.sym)=dimsym; } -#line 2122 "ncgeny.c" /* yacc.c:1646 */ +#line 2124 "ncgeny.c" /* yacc.c:1646 */ break; case 75: -#line 582 "ncgen.y" /* yacc.c:1646 */ +#line 584 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack); listpush(stack,(void*)(yyvsp[0].sym)); } -#line 2130 "ncgeny.c" /* yacc.c:1646 */ +#line 2132 "ncgeny.c" /* yacc.c:1646 */ break; case 76: -#line 586 "ncgen.y" /* yacc.c:1646 */ +#line 588 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-2].mark); listpush(stack,(void*)(yyvsp[0].sym));} -#line 2136 "ncgeny.c" /* yacc.c:1646 */ +#line 2138 "ncgeny.c" /* yacc.c:1646 */ break; case 77: -#line 591 "ncgen.y" /* yacc.c:1646 */ +#line 593 "ncgen.y" /* yacc.c:1646 */ { int i; Dimset dimset; @@ -2163,35 +2165,35 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); listsetlength(stack,stackbase);/* remove stack nodes*/ (yyval.sym) = (yyvsp[-1].sym); } -#line 2167 "ncgeny.c" /* yacc.c:1646 */ +#line 2169 "ncgeny.c" /* yacc.c:1646 */ break; case 78: -#line 619 "ncgen.y" /* yacc.c:1646 */ +#line 621 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack);} -#line 2173 "ncgeny.c" /* yacc.c:1646 */ +#line 2175 "ncgeny.c" /* yacc.c:1646 */ break; case 79: -#line 620 "ncgen.y" /* yacc.c:1646 */ +#line 622 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-1].mark);} -#line 2179 "ncgeny.c" /* yacc.c:1646 */ +#line 2181 "ncgeny.c" /* yacc.c:1646 */ break; case 80: -#line 624 "ncgen.y" /* yacc.c:1646 */ +#line 626 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=listlength(stack); listpush(stack,(void*)(yyvsp[0].sym));} -#line 2185 "ncgeny.c" /* yacc.c:1646 */ +#line 2187 "ncgeny.c" /* yacc.c:1646 */ break; case 81: -#line 626 "ncgen.y" /* yacc.c:1646 */ +#line 628 "ncgen.y" /* yacc.c:1646 */ {(yyval.mark)=(yyvsp[-2].mark); listpush(stack,(void*)(yyvsp[0].sym));} -#line 2191 "ncgeny.c" /* yacc.c:1646 */ +#line 2193 "ncgeny.c" /* yacc.c:1646 */ break; case 82: -#line 631 "ncgen.y" /* yacc.c:1646 */ +#line 633 "ncgen.y" /* yacc.c:1646 */ { /* Anonymous integer dimension. Can only occur in type definitions*/ char anon[32]; @@ -2201,11 +2203,11 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); (yyval.sym)->dim.isconstant = 1; (yyval.sym)->dim.declsize = uint32_val; } -#line 2205 "ncgeny.c" /* yacc.c:1646 */ +#line 2207 "ncgeny.c" /* yacc.c:1646 */ break; case 83: -#line 641 "ncgen.y" /* yacc.c:1646 */ +#line 643 "ncgen.y" /* yacc.c:1646 */ { /* Anonymous integer dimension. Can only occur in type definitions*/ char anon[32]; @@ -2219,11 +2221,11 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); (yyval.sym)->dim.isconstant = 1; (yyval.sym)->dim.declsize = int32_val; } -#line 2223 "ncgeny.c" /* yacc.c:1646 */ +#line 2225 "ncgeny.c" /* yacc.c:1646 */ break; case 84: -#line 661 "ncgen.y" /* yacc.c:1646 */ +#line 663 "ncgen.y" /* yacc.c:1646 */ {Symbol* vsym = (yyvsp[0].sym); if(vsym->objectclass != NC_VAR) { derror("Undefined or forward referenced variable: %s",vsym->name); @@ -2231,11 +2233,11 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); } (yyval.sym)=vsym; } -#line 2235 "ncgeny.c" /* yacc.c:1646 */ +#line 2237 "ncgeny.c" /* yacc.c:1646 */ break; case 85: -#line 672 "ncgen.y" /* yacc.c:1646 */ +#line 674 "ncgen.y" /* yacc.c:1646 */ {Symbol* tsym = (yyvsp[0].sym); if(tsym->objectclass != NC_TYPE) { derror("Undefined or forward referenced type: %s",tsym->name); @@ -2243,11 +2245,11 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); } (yyval.sym)=tsym; } -#line 2247 "ncgeny.c" /* yacc.c:1646 */ +#line 2249 "ncgeny.c" /* yacc.c:1646 */ break; case 86: -#line 683 "ncgen.y" /* yacc.c:1646 */ +#line 685 "ncgen.y" /* yacc.c:1646 */ {Symbol* tvsym = (yyvsp[0].sym); Symbol* sym; /* disambiguate*/ tvsym->objectclass = NC_VAR; @@ -2266,53 +2268,53 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); } (yyval.sym)=tvsym; } -#line 2270 "ncgeny.c" /* yacc.c:1646 */ +#line 2272 "ncgeny.c" /* yacc.c:1646 */ break; case 87: -#line 701 "ncgen.y" /* yacc.c:1646 */ +#line 703 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym)=(yyvsp[0].sym);} -#line 2276 "ncgeny.c" /* yacc.c:1646 */ +#line 2278 "ncgeny.c" /* yacc.c:1646 */ break; case 88: -#line 708 "ncgen.y" /* yacc.c:1646 */ +#line 710 "ncgen.y" /* yacc.c:1646 */ {} -#line 2282 "ncgeny.c" /* yacc.c:1646 */ +#line 2284 "ncgeny.c" /* yacc.c:1646 */ break; case 89: -#line 708 "ncgen.y" /* yacc.c:1646 */ +#line 710 "ncgen.y" /* yacc.c:1646 */ {} -#line 2288 "ncgeny.c" /* yacc.c:1646 */ +#line 2290 "ncgeny.c" /* yacc.c:1646 */ break; case 90: -#line 712 "ncgen.y" /* yacc.c:1646 */ +#line 714 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_NCPROPS_FLAG,NULL,NULL,(void*)&(yyvsp[0].constant),ATTRGLOBAL);} -#line 2294 "ncgeny.c" /* yacc.c:1646 */ +#line 2296 "ncgeny.c" /* yacc.c:1646 */ break; case 91: -#line 714 "ncgen.y" /* yacc.c:1646 */ +#line 716 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_ISNETCDF4_FLAG,NULL,NULL,(void*)&(yyvsp[0].constant),ATTRGLOBAL);} -#line 2300 "ncgeny.c" /* yacc.c:1646 */ +#line 2302 "ncgeny.c" /* yacc.c:1646 */ break; case 92: -#line 716 "ncgen.y" /* yacc.c:1646 */ +#line 718 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_SUPERBLOCK_FLAG,NULL,NULL,(void*)&(yyvsp[0].constant),ATTRGLOBAL);} -#line 2306 "ncgeny.c" /* yacc.c:1646 */ +#line 2308 "ncgeny.c" /* yacc.c:1646 */ break; case 93: -#line 718 "ncgen.y" /* yacc.c:1646 */ +#line 720 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym)=makeattribute((yyvsp[-2].sym),NULL,NULL,(yyvsp[0].datalist),ATTRGLOBAL);} -#line 2312 "ncgeny.c" /* yacc.c:1646 */ +#line 2314 "ncgeny.c" /* yacc.c:1646 */ break; case 94: -#line 720 "ncgen.y" /* yacc.c:1646 */ +#line 722 "ncgen.y" /* yacc.c:1646 */ {Symbol* tsym = (yyvsp[-5].sym); Symbol* vsym = (yyvsp[-4].sym); Symbol* asym = (yyvsp[-2].sym); if(vsym->objectclass == NC_VAR) { (yyval.sym)=makeattribute(asym,vsym,tsym,(yyvsp[0].datalist),ATTRVAR); @@ -2321,11 +2323,11 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); YYABORT; } } -#line 2325 "ncgeny.c" /* yacc.c:1646 */ +#line 2327 "ncgeny.c" /* yacc.c:1646 */ break; case 95: -#line 729 "ncgen.y" /* yacc.c:1646 */ +#line 731 "ncgen.y" /* yacc.c:1646 */ {Symbol* sym = (yyvsp[-4].sym); Symbol* asym = (yyvsp[-2].sym); if(sym->objectclass == NC_VAR) { (yyval.sym)=makeattribute(asym,sym,NULL,(yyvsp[0].datalist),ATTRVAR); @@ -2336,345 +2338,345 @@ fprintf(stderr,"dimension: %s = UNLIMITED\n",(yyvsp[-2].sym)->name); YYABORT; } } -#line 2340 "ncgeny.c" /* yacc.c:1646 */ +#line 2342 "ncgeny.c" /* yacc.c:1646 */ break; case 96: -#line 740 "ncgen.y" /* yacc.c:1646 */ +#line 742 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_FILLVALUE_FLAG,(yyvsp[-4].sym),NULL,(void*)(yyvsp[0].datalist),0);} -#line 2346 "ncgeny.c" /* yacc.c:1646 */ +#line 2348 "ncgeny.c" /* yacc.c:1646 */ break; case 97: -#line 742 "ncgen.y" /* yacc.c:1646 */ +#line 744 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_FILLVALUE_FLAG,(yyvsp[-4].sym),(yyvsp[-5].sym),(void*)(yyvsp[0].datalist),0);} -#line 2352 "ncgeny.c" /* yacc.c:1646 */ +#line 2354 "ncgeny.c" /* yacc.c:1646 */ break; case 98: -#line 744 "ncgen.y" /* yacc.c:1646 */ +#line 746 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_STORAGE_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2358 "ncgeny.c" /* yacc.c:1646 */ +#line 2360 "ncgeny.c" /* yacc.c:1646 */ break; case 99: -#line 746 "ncgen.y" /* yacc.c:1646 */ +#line 748 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_CHUNKSIZES_FLAG,(yyvsp[-4].sym),NULL,(void*)(yyvsp[0].datalist),0);} -#line 2364 "ncgeny.c" /* yacc.c:1646 */ +#line 2366 "ncgeny.c" /* yacc.c:1646 */ break; case 100: -#line 748 "ncgen.y" /* yacc.c:1646 */ +#line 750 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_FLETCHER32_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2370 "ncgeny.c" /* yacc.c:1646 */ +#line 2372 "ncgeny.c" /* yacc.c:1646 */ break; case 101: -#line 750 "ncgen.y" /* yacc.c:1646 */ +#line 752 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_DEFLATE_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2376 "ncgeny.c" /* yacc.c:1646 */ +#line 2378 "ncgeny.c" /* yacc.c:1646 */ break; case 102: -#line 752 "ncgen.y" /* yacc.c:1646 */ +#line 754 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_SHUFFLE_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2382 "ncgeny.c" /* yacc.c:1646 */ +#line 2384 "ncgeny.c" /* yacc.c:1646 */ break; case 103: -#line 754 "ncgen.y" /* yacc.c:1646 */ +#line 756 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_ENDIAN_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2388 "ncgeny.c" /* yacc.c:1646 */ +#line 2390 "ncgeny.c" /* yacc.c:1646 */ break; case 104: -#line 756 "ncgen.y" /* yacc.c:1646 */ +#line 758 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_FILTER_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2394 "ncgeny.c" /* yacc.c:1646 */ +#line 2396 "ncgeny.c" /* yacc.c:1646 */ break; case 105: -#line 758 "ncgen.y" /* yacc.c:1646 */ +#line 760 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_NOFILL_FLAG,(yyvsp[-4].sym),NULL,(void*)&(yyvsp[0].constant),1);} -#line 2400 "ncgeny.c" /* yacc.c:1646 */ +#line 2402 "ncgeny.c" /* yacc.c:1646 */ break; case 106: -#line 760 "ncgen.y" /* yacc.c:1646 */ +#line 762 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym) = makespecial(_FORMAT_FLAG,NULL,NULL,(void*)&(yyvsp[0].constant),1);} -#line 2406 "ncgeny.c" /* yacc.c:1646 */ +#line 2408 "ncgeny.c" /* yacc.c:1646 */ break; case 107: -#line 765 "ncgen.y" /* yacc.c:1646 */ +#line 767 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym)=(yyvsp[0].sym); (yyvsp[0].sym)->ref.is_ref=1; (yyvsp[0].sym)->is_prefixed=0; setpathcurrent((yyvsp[0].sym)); } -#line 2417 "ncgeny.c" /* yacc.c:1646 */ +#line 2419 "ncgeny.c" /* yacc.c:1646 */ break; case 108: -#line 772 "ncgen.y" /* yacc.c:1646 */ +#line 774 "ncgen.y" /* yacc.c:1646 */ { (yyval.sym)=(yyvsp[0].sym); (yyvsp[0].sym)->ref.is_ref=1; (yyvsp[0].sym)->is_prefixed=1; /* path is set in ncgen.l*/ } -#line 2428 "ncgeny.c" /* yacc.c:1646 */ +#line 2430 "ncgeny.c" /* yacc.c:1646 */ break; case 110: -#line 781 "ncgen.y" /* yacc.c:1646 */ +#line 783 "ncgen.y" /* yacc.c:1646 */ {} -#line 2434 "ncgeny.c" /* yacc.c:1646 */ +#line 2436 "ncgeny.c" /* yacc.c:1646 */ break; case 111: -#line 782 "ncgen.y" /* yacc.c:1646 */ +#line 784 "ncgen.y" /* yacc.c:1646 */ {} -#line 2440 "ncgeny.c" /* yacc.c:1646 */ +#line 2442 "ncgeny.c" /* yacc.c:1646 */ break; case 114: -#line 790 "ncgen.y" /* yacc.c:1646 */ +#line 792 "ncgen.y" /* yacc.c:1646 */ {(yyvsp[-2].sym)->data = (yyvsp[0].datalist);} -#line 2446 "ncgeny.c" /* yacc.c:1646 */ +#line 2448 "ncgeny.c" /* yacc.c:1646 */ break; case 115: -#line 793 "ncgen.y" /* yacc.c:1646 */ +#line 795 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist) = (yyvsp[0].datalist);} -#line 2452 "ncgeny.c" /* yacc.c:1646 */ +#line 2454 "ncgeny.c" /* yacc.c:1646 */ break; case 116: -#line 794 "ncgen.y" /* yacc.c:1646 */ +#line 796 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist) = (yyvsp[0].datalist);} -#line 2458 "ncgeny.c" /* yacc.c:1646 */ +#line 2460 "ncgeny.c" /* yacc.c:1646 */ break; case 117: -#line 798 "ncgen.y" /* yacc.c:1646 */ +#line 800 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist) = builddatalist(0);} -#line 2464 "ncgeny.c" /* yacc.c:1646 */ +#line 2466 "ncgeny.c" /* yacc.c:1646 */ break; case 118: -#line 802 "ncgen.y" /* yacc.c:1646 */ +#line 804 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[0].constant)));} -#line 2470 "ncgeny.c" /* yacc.c:1646 */ +#line 2472 "ncgeny.c" /* yacc.c:1646 */ break; case 119: -#line 804 "ncgen.y" /* yacc.c:1646 */ +#line 806 "ncgen.y" /* yacc.c:1646 */ {datalistextend((yyvsp[-2].datalist),&((yyvsp[0].constant))); (yyval.datalist)=(yyvsp[-2].datalist);} -#line 2476 "ncgeny.c" /* yacc.c:1646 */ +#line 2478 "ncgeny.c" /* yacc.c:1646 */ break; case 120: -#line 808 "ncgen.y" /* yacc.c:1646 */ +#line 810 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=(yyvsp[0].constant);} -#line 2482 "ncgeny.c" /* yacc.c:1646 */ +#line 2484 "ncgeny.c" /* yacc.c:1646 */ break; case 121: -#line 809 "ncgen.y" /* yacc.c:1646 */ +#line 811 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=builddatasublist((yyvsp[-1].datalist));} -#line 2488 "ncgeny.c" /* yacc.c:1646 */ +#line 2490 "ncgeny.c" /* yacc.c:1646 */ break; case 122: -#line 813 "ncgen.y" /* yacc.c:1646 */ +#line 815 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=(yyvsp[0].constant);} -#line 2494 "ncgeny.c" /* yacc.c:1646 */ +#line 2496 "ncgeny.c" /* yacc.c:1646 */ break; case 123: -#line 814 "ncgen.y" /* yacc.c:1646 */ +#line 816 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_OPAQUE);} -#line 2500 "ncgeny.c" /* yacc.c:1646 */ +#line 2502 "ncgeny.c" /* yacc.c:1646 */ break; case 124: -#line 815 "ncgen.y" /* yacc.c:1646 */ +#line 817 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_FILLVALUE);} -#line 2506 "ncgeny.c" /* yacc.c:1646 */ +#line 2508 "ncgeny.c" /* yacc.c:1646 */ break; case 125: -#line 816 "ncgen.y" /* yacc.c:1646 */ +#line 818 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_NIL);} -#line 2512 "ncgeny.c" /* yacc.c:1646 */ +#line 2514 "ncgeny.c" /* yacc.c:1646 */ break; case 126: -#line 817 "ncgen.y" /* yacc.c:1646 */ +#line 819 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=(yyvsp[0].constant);} -#line 2518 "ncgeny.c" /* yacc.c:1646 */ +#line 2520 "ncgeny.c" /* yacc.c:1646 */ break; case 128: -#line 822 "ncgen.y" /* yacc.c:1646 */ +#line 824 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant) = makeenumconstref((yyvsp[0].sym));} -#line 2524 "ncgeny.c" /* yacc.c:1646 */ +#line 2526 "ncgeny.c" /* yacc.c:1646 */ break; case 129: -#line 826 "ncgen.y" /* yacc.c:1646 */ +#line 828 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=evaluate((yyvsp[-3].sym),(yyvsp[-1].datalist));} -#line 2530 "ncgeny.c" /* yacc.c:1646 */ +#line 2532 "ncgeny.c" /* yacc.c:1646 */ break; case 130: -#line 831 "ncgen.y" /* yacc.c:1646 */ +#line 833 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[0].constant)));} -#line 2536 "ncgeny.c" /* yacc.c:1646 */ +#line 2538 "ncgeny.c" /* yacc.c:1646 */ break; case 131: -#line 833 "ncgen.y" /* yacc.c:1646 */ +#line 835 "ncgen.y" /* yacc.c:1646 */ {datalistextend((yyvsp[-2].datalist),&((yyvsp[0].constant))); (yyval.datalist)=(yyvsp[-2].datalist);} -#line 2542 "ncgeny.c" /* yacc.c:1646 */ +#line 2544 "ncgeny.c" /* yacc.c:1646 */ break; case 132: -#line 837 "ncgen.y" /* yacc.c:1646 */ +#line 839 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_CHAR);} -#line 2548 "ncgeny.c" /* yacc.c:1646 */ +#line 2550 "ncgeny.c" /* yacc.c:1646 */ break; case 133: -#line 838 "ncgen.y" /* yacc.c:1646 */ +#line 840 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_BYTE);} -#line 2554 "ncgeny.c" /* yacc.c:1646 */ +#line 2556 "ncgeny.c" /* yacc.c:1646 */ break; case 134: -#line 839 "ncgen.y" /* yacc.c:1646 */ +#line 841 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_SHORT);} -#line 2560 "ncgeny.c" /* yacc.c:1646 */ +#line 2562 "ncgeny.c" /* yacc.c:1646 */ break; case 135: -#line 840 "ncgen.y" /* yacc.c:1646 */ +#line 842 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_INT);} -#line 2566 "ncgeny.c" /* yacc.c:1646 */ +#line 2568 "ncgeny.c" /* yacc.c:1646 */ break; case 136: -#line 841 "ncgen.y" /* yacc.c:1646 */ +#line 843 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_INT64);} -#line 2572 "ncgeny.c" /* yacc.c:1646 */ +#line 2574 "ncgeny.c" /* yacc.c:1646 */ break; case 137: -#line 842 "ncgen.y" /* yacc.c:1646 */ +#line 844 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_UBYTE);} -#line 2578 "ncgeny.c" /* yacc.c:1646 */ +#line 2580 "ncgeny.c" /* yacc.c:1646 */ break; case 138: -#line 843 "ncgen.y" /* yacc.c:1646 */ +#line 845 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_USHORT);} -#line 2584 "ncgeny.c" /* yacc.c:1646 */ +#line 2586 "ncgeny.c" /* yacc.c:1646 */ break; case 139: -#line 844 "ncgen.y" /* yacc.c:1646 */ +#line 846 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_UINT);} -#line 2590 "ncgeny.c" /* yacc.c:1646 */ +#line 2592 "ncgeny.c" /* yacc.c:1646 */ break; case 140: -#line 845 "ncgen.y" /* yacc.c:1646 */ +#line 847 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_UINT64);} -#line 2596 "ncgeny.c" /* yacc.c:1646 */ +#line 2598 "ncgeny.c" /* yacc.c:1646 */ break; case 141: -#line 846 "ncgen.y" /* yacc.c:1646 */ +#line 848 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_FLOAT);} -#line 2602 "ncgeny.c" /* yacc.c:1646 */ +#line 2604 "ncgeny.c" /* yacc.c:1646 */ break; case 142: -#line 847 "ncgen.y" /* yacc.c:1646 */ +#line 849 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_DOUBLE);} -#line 2608 "ncgeny.c" /* yacc.c:1646 */ +#line 2610 "ncgeny.c" /* yacc.c:1646 */ break; case 143: -#line 848 "ncgen.y" /* yacc.c:1646 */ +#line 850 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_STRING);} -#line 2614 "ncgeny.c" /* yacc.c:1646 */ +#line 2616 "ncgeny.c" /* yacc.c:1646 */ break; case 144: -#line 852 "ncgen.y" /* yacc.c:1646 */ +#line 854 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[0].constant)));} -#line 2620 "ncgeny.c" /* yacc.c:1646 */ +#line 2622 "ncgeny.c" /* yacc.c:1646 */ break; case 145: -#line 853 "ncgen.y" /* yacc.c:1646 */ +#line 855 "ncgen.y" /* yacc.c:1646 */ {(yyval.datalist)=(yyvsp[-2].datalist); datalistextend((yyvsp[-2].datalist),&((yyvsp[0].constant)));} -#line 2626 "ncgeny.c" /* yacc.c:1646 */ +#line 2628 "ncgeny.c" /* yacc.c:1646 */ break; case 146: -#line 858 "ncgen.y" /* yacc.c:1646 */ +#line 860 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_INT);} -#line 2632 "ncgeny.c" /* yacc.c:1646 */ +#line 2634 "ncgeny.c" /* yacc.c:1646 */ break; case 147: -#line 860 "ncgen.y" /* yacc.c:1646 */ +#line 862 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_UINT);} -#line 2638 "ncgeny.c" /* yacc.c:1646 */ +#line 2640 "ncgeny.c" /* yacc.c:1646 */ break; case 148: -#line 862 "ncgen.y" /* yacc.c:1646 */ +#line 864 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_INT64);} -#line 2644 "ncgeny.c" /* yacc.c:1646 */ +#line 2646 "ncgeny.c" /* yacc.c:1646 */ break; case 149: -#line 864 "ncgen.y" /* yacc.c:1646 */ +#line 866 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_UINT64);} -#line 2650 "ncgeny.c" /* yacc.c:1646 */ +#line 2652 "ncgeny.c" /* yacc.c:1646 */ break; case 150: -#line 868 "ncgen.y" /* yacc.c:1646 */ +#line 870 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=makeconstdata(NC_STRING);} -#line 2656 "ncgeny.c" /* yacc.c:1646 */ +#line 2658 "ncgeny.c" /* yacc.c:1646 */ break; case 151: -#line 872 "ncgen.y" /* yacc.c:1646 */ +#line 874 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=(yyvsp[0].constant);} -#line 2662 "ncgeny.c" /* yacc.c:1646 */ +#line 2664 "ncgeny.c" /* yacc.c:1646 */ break; case 152: -#line 873 "ncgen.y" /* yacc.c:1646 */ +#line 875 "ncgen.y" /* yacc.c:1646 */ {(yyval.constant)=(yyvsp[0].constant);} -#line 2668 "ncgeny.c" /* yacc.c:1646 */ +#line 2670 "ncgeny.c" /* yacc.c:1646 */ break; case 153: -#line 879 "ncgen.y" /* yacc.c:1646 */ +#line 881 "ncgen.y" /* yacc.c:1646 */ {(yyval.sym)=(yyvsp[0].sym);} -#line 2674 "ncgeny.c" /* yacc.c:1646 */ +#line 2676 "ncgeny.c" /* yacc.c:1646 */ break; -#line 2678 "ncgeny.c" /* yacc.c:1646 */ +#line 2680 "ncgeny.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -2902,7 +2904,7 @@ yyreturn: #endif return yyresult; } -#line 882 "ncgen.y" /* yacc.c:1906 */ +#line 884 "ncgen.y" /* yacc.c:1906 */ #ifndef NO_STDARG diff --git a/ncgen/ncgeny.h b/ncgen/ncgeny.h index dab86a4e6..104bbb7af 100644 --- a/ncgen/ncgeny.h +++ b/ncgen/ncgeny.h @@ -106,7 +106,7 @@ extern int ncgdebug; union YYSTYPE { -#line 145 "ncgen.y" /* yacc.c:1909 */ +#line 147 "ncgen.y" /* yacc.c:1909 */ Symbol* sym; unsigned long size; /* allow for zero size to indicate e.g. UNLIMITED*/