Fixed NCF-104

This commit is contained in:
Dennis Heimbigner 2011-07-27 20:48:58 +00:00
parent 9cc97dfe93
commit 53e8d22d24
8 changed files with 150 additions and 148 deletions

2
cf
View File

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
#X="-x" #X="-x"
#HDF5=1 HDF5=1
DAP=1 DAP=1
#CDMR=1 #CDMR=1

View File

@ -6,13 +6,13 @@ set -e
echo "" echo ""
echo "*** Creating example data files from CDL scripts." echo "*** Creating example data files from CDL scripts."
echo "*** creating simple_xy.nc..." echo "*** creating simple_xy.nc..."
../../ncgen/ncgen -o simple_xy.nc $srcdir/simple_xy.cdl ../../ncgen/ncgen -b -o simple_xy.nc $srcdir/simple_xy.cdl
echo "*** checking sfc_pres_temp.nc..." echo "*** checking sfc_pres_temp.nc..."
../../ncgen/ncgen -o sfc_pres_temp.nc $srcdir/sfc_pres_temp.cdl ../../ncgen/ncgen -b -o sfc_pres_temp.nc $srcdir/sfc_pres_temp.cdl
echo "*** checking pres_temp_4D.nc..." echo "*** checking pres_temp_4D.nc..."
../../ncgen/ncgen -o pres_temp_4D.nc $srcdir/pres_temp_4D.cdl ../../ncgen/ncgen -b -o pres_temp_4D.nc $srcdir/pres_temp_4D.cdl
echo "*** All example creations worked!" echo "*** All example creations worked!"
exit 0 exit 0

View File

@ -6,7 +6,7 @@ set -e
echo "" echo ""
echo "*** Testing ncgen and ncdump using some test CDL files." echo "*** Testing ncgen and ncdump using some test CDL files."
echo "*** creating tst_small.nc from ref_tst_small.cdl..." echo "*** creating tst_small.nc from ref_tst_small.cdl..."
../ncgen/ncgen -o tst_small.nc $srcdir/ref_tst_small.cdl ../ncgen/ncgen -b -o tst_small.nc $srcdir/ref_tst_small.cdl
echo "*** creating tst_small.cdl from tst_small.nc..." echo "*** creating tst_small.cdl from tst_small.nc..."
./ncdump tst_small.nc > tst_small.cdl ./ncdump tst_small.nc > tst_small.cdl
diff -w tst_small.cdl $srcdir/ref_tst_small.cdl diff -w tst_small.cdl $srcdir/ref_tst_small.cdl

View File

@ -33,12 +33,12 @@ for x in ${TESTSET} ; do
else else
rm -f ${x}.nc ${x}.dmp rm -f ${x}.nc ${x}.dmp
# step 1: use original cdl to build the .nc # step 1: use original cdl to build the .nc
${builddir}/../ncgen/ncgen -k${KFLAG} -o ${x}.nc ${cdl}/${x}.cdl ${builddir}/../ncgen/ncgen -b -k${KFLAG} -o ${x}.nc ${cdl}/${x}.cdl
# step 2: dump .nc file # step 2: dump .nc file
${builddir}/../ncdump/ncdump ${headflag} ${specflag} ${x}.nc > ${x}.dmp ${builddir}/../ncdump/ncdump ${headflag} ${specflag} ${x}.nc > ${x}.dmp
# step 3: use ncdump output to (re-)build the .nc # step 3: use ncdump output to (re-)build the .nc
rm -f ${x}.nc rm -f ${x}.nc
${builddir}/../ncgen/ncgen -k${KFLAG} -o ${x}.nc ${x}.dmp ${builddir}/../ncgen/ncgen -b -k${KFLAG} -o ${x}.nc ${x}.dmp
# step 4: dump .nc file again # step 4: dump .nc file again
${builddir}/../ncdump/ncdump ${headflag} ${specflag} ${x}.nc > ${x}.dmp2 ${builddir}/../ncdump/ncdump ${headflag} ${specflag} ${x}.nc > ${x}.dmp2
# compare the two ncdump outputs # compare the two ncdump outputs

View File

@ -31,7 +31,7 @@ for x in ${TESTSET} ; do
if test "x${t}" = "x${x}" ; then isxfail=1; fi if test "x${t}" = "x${x}" ; then isxfail=1; fi
done done
rm -f ${x}.nc ${x}.dmp rm -f ${x}.nc ${x}.dmp
${builddir}/../ncgen/ncgen -k${KFLAG} -o ${x}.nc ${cdl}/${x}.cdl ${builddir}/../ncgen/ncgen -b -k${KFLAG} -o ${x}.nc ${cdl}/${x}.cdl
# dump .nc file # dump .nc file
${builddir}/../ncdump/ncdump ${headflag} ${specflag} ${x}.nc > ${x}.dmp ${builddir}/../ncdump/ncdump ${headflag} ${specflag} ${x}.nc > ${x}.dmp
# compare the expected (silently if XFAIL) # compare the expected (silently if XFAIL)

View File

@ -18,9 +18,6 @@ extern void init_netcdf(void);
extern void parse_init(void); extern void parse_init(void);
extern int ncgparse(void); extern int ncgparse(void);
/* Default is netcdf-3 mode 1 */
#define DFALTCMODE 0
/* For error messages */ /* For error messages */
char* progname; char* progname;
char* cdlname; char* cdlname;
@ -34,6 +31,7 @@ int binary_flag;
int f77_flag; int f77_flag;
int cml_flag; int cml_flag;
int java_flag; /* 1=> use netcdf java interface (=>usingclassic)*/ int java_flag; /* 1=> use netcdf java interface (=>usingclassic)*/
int syntax_only;
size_t nciterbuffersize; size_t nciterbuffersize;
@ -156,6 +154,7 @@ main(
kflag_flag = 0; kflag_flag = 0;
cmode_modifier = 0; cmode_modifier = 0;
nofill_flag = 0; nofill_flag = 0;
syntax_only = 0;
mainname = "main"; mainname = "main";
nciterbuffersize = 0; nciterbuffersize = 0;
@ -258,15 +257,15 @@ main(
} }
/* check for multiple or no language spec */ /* check for multiple or no language spec */
if(c_flag) languages++;
if(binary_flag) languages++; if(binary_flag) languages++;
if(c_flag) languages++;
if(f77_flag)languages++; if(f77_flag)languages++;
if(cml_flag) languages++; if(cml_flag) languages++;
if(java_flag) languages++; if(java_flag) languages++;
if(languages > 1) { if(languages > 1) {
fprintf(stderr,"Please specify only one language\n"); fprintf(stderr,"Please specify only one language\n");
} else if(languages == 0) { } else if(languages == 0) {
binary_flag = 1; /* binary is default */ syntax_only = 1;
} }
/* Compute/default the iterator buffer size */ /* Compute/default the iterator buffer size */
@ -382,7 +381,8 @@ main(
#endif #endif
processsemantics(); processsemantics();
define_netcdf(); if(!syntax_only)
define_netcdf();
return 0; return 0;
} }

View File

@ -6,6 +6,8 @@
/* yacc source for "ncgen", a netCDL parser and netCDF generator */ /* yacc source for "ncgen", a netCDL parser and netCDF generator */
%error-verbose
%{ %{
/* /*
static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $"; static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $";

View File

@ -75,7 +75,7 @@
/* Copy the first part of user declarations. */ /* Copy the first part of user declarations. */
/* Line 189 of yacc.c */ /* Line 189 of yacc.c */
#line 9 "ncgen.y" #line 11 "ncgen.y"
/* /*
static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $"; static char SccsId[] = "$Id: ncgen.y,v 1.42 2010/05/18 21:32:46 dmh Exp $";
@ -202,7 +202,7 @@ extern int lex_init(void);
# undef YYERROR_VERBOSE # undef YYERROR_VERBOSE
# define YYERROR_VERBOSE 1 # define YYERROR_VERBOSE 1
#else #else
# define YYERROR_VERBOSE 0 # define YYERROR_VERBOSE 1
#endif #endif
/* Enabling the token table. */ /* Enabling the token table. */
@ -274,7 +274,7 @@ typedef union YYSTYPE
{ {
/* Line 214 of yacc.c */ /* Line 214 of yacc.c */
#line 124 "ncgen.y" #line 126 "ncgen.y"
Symbol* sym; Symbol* sym;
unsigned long size; /* allow for zero size to indicate e.g. UNLIMITED*/ unsigned long size; /* allow for zero size to indicate e.g. UNLIMITED*/
@ -639,21 +639,21 @@ static const yytype_int8 yyrhs[] =
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] = static const yytype_uint16 yyrline[] =
{ {
0, 199, 199, 205, 212, 219, 219, 222, 231, 221, 0, 201, 201, 207, 214, 221, 221, 224, 233, 223,
236, 237, 238, 242, 242, 244, 254, 254, 257, 258, 238, 239, 240, 244, 244, 246, 256, 256, 259, 260,
259, 260, 263, 263, 266, 296, 298, 315, 324, 336, 261, 262, 265, 265, 268, 298, 300, 317, 326, 338,
350, 383, 384, 387, 401, 402, 403, 404, 405, 406, 352, 385, 386, 389, 403, 404, 405, 406, 407, 408,
407, 408, 409, 410, 411, 414, 415, 416, 419, 420, 409, 410, 411, 412, 413, 416, 417, 418, 421, 422,
423, 423, 425, 426, 430, 434, 442, 452, 464, 476, 425, 425, 427, 428, 432, 436, 444, 454, 466, 478,
477, 478, 481, 482, 485, 485, 487, 509, 513, 517, 479, 480, 483, 484, 487, 487, 489, 511, 515, 519,
544, 545, 548, 549, 553, 567, 571, 576, 605, 606, 546, 547, 550, 551, 555, 569, 573, 578, 607, 608,
610, 611, 616, 626, 646, 657, 668, 687, 694, 694, 612, 613, 618, 628, 648, 659, 670, 689, 696, 696,
697, 699, 708, 719, 721, 723, 725, 727, 729, 731, 699, 701, 710, 721, 723, 725, 727, 729, 731, 733,
733, 735, 737, 744, 750, 759, 760, 761, 764, 765, 735, 737, 739, 746, 752, 761, 762, 763, 766, 767,
768, 772, 773, 777, 781, 782, 787, 788, 792, 793, 770, 774, 775, 779, 783, 784, 789, 790, 794, 795,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
804, 805, 806, 810, 811, 815, 817, 819, 821, 826, 806, 807, 808, 812, 813, 817, 819, 821, 823, 828,
830, 831 832, 833
}; };
#endif #endif
@ -1760,14 +1760,14 @@ yyreduce:
case 2: case 2:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 202 "ncgen.y" #line 204 "ncgen.y"
{if (derror_count > 0) exit(6);;} {if (derror_count > 0) exit(6);;}
break; break;
case 7: case 7:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 222 "ncgen.y" #line 224 "ncgen.y"
{ {
Symbol* id = (yyvsp[(2) - (3)].sym); Symbol* id = (yyvsp[(2) - (3)].sym);
markcdf4("Group specification"); markcdf4("Group specification");
@ -1780,28 +1780,28 @@ yyreduce:
case 8: case 8:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 231 "ncgen.y" #line 233 "ncgen.y"
{listpop(groupstack);;} {listpop(groupstack);;}
break; break;
case 11: case 11:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 237 "ncgen.y" #line 239 "ncgen.y"
{;} {;}
break; break;
case 12: case 12:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 239 "ncgen.y" #line 241 "ncgen.y"
{markcdf4("Type specification");;} {markcdf4("Type specification");;}
break; break;
case 15: case 15:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 245 "ncgen.y" #line 247 "ncgen.y"
{ /* Use when defining a type */ { /* Use when defining a type */
(yyvsp[(1) - (1)].sym)->objectclass = NC_TYPE; (yyvsp[(1) - (1)].sym)->objectclass = NC_TYPE;
if(dupobjectcheck(NC_TYPE,(yyvsp[(1) - (1)].sym))) if(dupobjectcheck(NC_TYPE,(yyvsp[(1) - (1)].sym)))
@ -1814,21 +1814,21 @@ yyreduce:
case 16: case 16:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 254 "ncgen.y" #line 256 "ncgen.y"
{;} {;}
break; break;
case 17: case 17:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 254 "ncgen.y" #line 256 "ncgen.y"
{;} {;}
break; break;
case 24: case 24:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 268 "ncgen.y" #line 270 "ncgen.y"
{ {
int i; int i;
addtogroup((yyvsp[(3) - (6)].sym)); /* sets prefix*/ addtogroup((yyvsp[(3) - (6)].sym)); /* sets prefix*/
@ -1860,14 +1860,14 @@ yyreduce:
case 25: case 25:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 297 "ncgen.y" #line 299 "ncgen.y"
{(yyval.mark)=listlength(stack); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));;} {(yyval.mark)=listlength(stack); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));;}
break; break;
case 26: case 26:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 299 "ncgen.y" #line 301 "ncgen.y"
{ {
int i; int i;
(yyval.mark)=(yyvsp[(1) - (3)].mark); (yyval.mark)=(yyvsp[(1) - (3)].mark);
@ -1887,7 +1887,7 @@ yyreduce:
case 27: case 27:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 316 "ncgen.y" #line 318 "ncgen.y"
{ {
(yyvsp[(1) - (3)].sym)->objectclass=NC_TYPE; (yyvsp[(1) - (3)].sym)->objectclass=NC_TYPE;
(yyvsp[(1) - (3)].sym)->subclass=NC_ECONST; (yyvsp[(1) - (3)].sym)->subclass=NC_ECONST;
@ -1899,7 +1899,7 @@ yyreduce:
case 28: case 28:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 325 "ncgen.y" #line 327 "ncgen.y"
{ {
vercheck(NC_OPAQUE); vercheck(NC_OPAQUE);
addtogroup((yyvsp[(5) - (5)].sym)); /*sets prefix*/ addtogroup((yyvsp[(5) - (5)].sym)); /*sets prefix*/
@ -1914,7 +1914,7 @@ yyreduce:
case 29: case 29:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 337 "ncgen.y" #line 339 "ncgen.y"
{ {
Symbol* basetype = (yyvsp[(1) - (5)].sym); Symbol* basetype = (yyvsp[(1) - (5)].sym);
vercheck(NC_VLEN); vercheck(NC_VLEN);
@ -1931,7 +1931,7 @@ yyreduce:
case 30: case 30:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 351 "ncgen.y" #line 353 "ncgen.y"
{ {
int i,j; int i,j;
vercheck(NC_COMPOUND); vercheck(NC_COMPOUND);
@ -1966,21 +1966,21 @@ yyreduce:
case 31: case 31:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 383 "ncgen.y" #line 385 "ncgen.y"
{(yyval.mark)=(yyvsp[(1) - (2)].mark);;} {(yyval.mark)=(yyvsp[(1) - (2)].mark);;}
break; break;
case 32: case 32:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 384 "ncgen.y" #line 386 "ncgen.y"
{(yyval.mark)=(yyvsp[(1) - (3)].mark);;} {(yyval.mark)=(yyvsp[(1) - (3)].mark);;}
break; break;
case 33: case 33:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 388 "ncgen.y" #line 390 "ncgen.y"
{ {
int i; int i;
(yyval.mark)=(yyvsp[(2) - (2)].mark); (yyval.mark)=(yyvsp[(2) - (2)].mark);
@ -1997,112 +1997,112 @@ yyreduce:
case 34: case 34:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 401 "ncgen.y" #line 403 "ncgen.y"
{ (yyval.sym) = primsymbols[NC_CHAR]; ;} { (yyval.sym) = primsymbols[NC_CHAR]; ;}
break; break;
case 35: case 35:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 402 "ncgen.y" #line 404 "ncgen.y"
{ (yyval.sym) = primsymbols[NC_BYTE]; ;} { (yyval.sym) = primsymbols[NC_BYTE]; ;}
break; break;
case 36: case 36:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 403 "ncgen.y" #line 405 "ncgen.y"
{ (yyval.sym) = primsymbols[NC_SHORT]; ;} { (yyval.sym) = primsymbols[NC_SHORT]; ;}
break; break;
case 37: case 37:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 404 "ncgen.y" #line 406 "ncgen.y"
{ (yyval.sym) = primsymbols[NC_INT]; ;} { (yyval.sym) = primsymbols[NC_INT]; ;}
break; break;
case 38: case 38:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 405 "ncgen.y" #line 407 "ncgen.y"
{ (yyval.sym) = primsymbols[NC_FLOAT]; ;} { (yyval.sym) = primsymbols[NC_FLOAT]; ;}
break; break;
case 39: case 39:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 406 "ncgen.y" #line 408 "ncgen.y"
{ (yyval.sym) = primsymbols[NC_DOUBLE]; ;} { (yyval.sym) = primsymbols[NC_DOUBLE]; ;}
break; break;
case 40: case 40:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 407 "ncgen.y" #line 409 "ncgen.y"
{ vercheck(NC_UBYTE); (yyval.sym) = primsymbols[NC_UBYTE]; ;} { vercheck(NC_UBYTE); (yyval.sym) = primsymbols[NC_UBYTE]; ;}
break; break;
case 41: case 41:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 408 "ncgen.y" #line 410 "ncgen.y"
{ vercheck(NC_USHORT); (yyval.sym) = primsymbols[NC_USHORT]; ;} { vercheck(NC_USHORT); (yyval.sym) = primsymbols[NC_USHORT]; ;}
break; break;
case 42: case 42:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 409 "ncgen.y" #line 411 "ncgen.y"
{ vercheck(NC_UINT); (yyval.sym) = primsymbols[NC_UINT]; ;} { vercheck(NC_UINT); (yyval.sym) = primsymbols[NC_UINT]; ;}
break; break;
case 43: case 43:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 410 "ncgen.y" #line 412 "ncgen.y"
{ vercheck(NC_INT64); (yyval.sym) = primsymbols[NC_INT64]; ;} { vercheck(NC_INT64); (yyval.sym) = primsymbols[NC_INT64]; ;}
break; break;
case 44: case 44:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 411 "ncgen.y" #line 413 "ncgen.y"
{ vercheck(NC_UINT64); (yyval.sym) = primsymbols[NC_UINT64]; ;} { vercheck(NC_UINT64); (yyval.sym) = primsymbols[NC_UINT64]; ;}
break; break;
case 46: case 46:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 415 "ncgen.y" #line 417 "ncgen.y"
{;} {;}
break; break;
case 47: case 47:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 416 "ncgen.y" #line 418 "ncgen.y"
{;} {;}
break; break;
case 50: case 50:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 423 "ncgen.y" #line 425 "ncgen.y"
{;} {;}
break; break;
case 51: case 51:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 423 "ncgen.y" #line 425 "ncgen.y"
{;} {;}
break; break;
case 54: case 54:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 431 "ncgen.y" #line 433 "ncgen.y"
{ {
(yyvsp[(1) - (3)].sym)->dim.declsize = (size_t)uint32_val; (yyvsp[(1) - (3)].sym)->dim.declsize = (size_t)uint32_val;
;} ;}
@ -2111,7 +2111,7 @@ yyreduce:
case 55: case 55:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 435 "ncgen.y" #line 437 "ncgen.y"
{ {
if(int32_val <= 0) { if(int32_val <= 0) {
derror("dimension size must be positive"); derror("dimension size must be positive");
@ -2124,7 +2124,7 @@ yyreduce:
case 56: case 56:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 443 "ncgen.y" #line 445 "ncgen.y"
{ /* for rare case where 2^31 < dimsize < 2^32 */ { /* for rare case where 2^31 < dimsize < 2^32 */
if (double_val <= 0) if (double_val <= 0)
yyerror("dimension length must be positive"); yyerror("dimension length must be positive");
@ -2139,7 +2139,7 @@ yyreduce:
case 57: case 57:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 453 "ncgen.y" #line 455 "ncgen.y"
{ {
if(usingclassic) { if(usingclassic) {
/* check for multiple UNLIMITED decls*/ /* check for multiple UNLIMITED decls*/
@ -2154,7 +2154,7 @@ yyreduce:
case 58: case 58:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 465 "ncgen.y" #line 467 "ncgen.y"
{ {
(yyvsp[(1) - (1)].sym)->objectclass=NC_DIM; (yyvsp[(1) - (1)].sym)->objectclass=NC_DIM;
if(dupobjectcheck(NC_DIM,(yyvsp[(1) - (1)].sym))) if(dupobjectcheck(NC_DIM,(yyvsp[(1) - (1)].sym)))
@ -2169,35 +2169,35 @@ yyreduce:
case 60: case 60:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 477 "ncgen.y" #line 479 "ncgen.y"
{;} {;}
break; break;
case 61: case 61:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 478 "ncgen.y" #line 480 "ncgen.y"
{;} {;}
break; break;
case 64: case 64:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 485 "ncgen.y" #line 487 "ncgen.y"
{;} {;}
break; break;
case 65: case 65:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 485 "ncgen.y" #line 487 "ncgen.y"
{;} {;}
break; break;
case 66: case 66:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 488 "ncgen.y" #line 490 "ncgen.y"
{ {
int i; int i;
stackbase=(yyvsp[(2) - (2)].mark); stackbase=(yyvsp[(2) - (2)].mark);
@ -2222,7 +2222,7 @@ yyreduce:
case 67: case 67:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 510 "ncgen.y" #line 512 "ncgen.y"
{(yyval.mark)=listlength(stack); {(yyval.mark)=listlength(stack);
listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym)); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));
;} ;}
@ -2231,14 +2231,14 @@ yyreduce:
case 68: case 68:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 514 "ncgen.y" #line 516 "ncgen.y"
{(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;} {(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;}
break; break;
case 69: case 69:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 518 "ncgen.y" #line 520 "ncgen.y"
{ {
int i; int i;
Dimset dimset; Dimset dimset;
@ -2268,35 +2268,35 @@ yyreduce:
case 70: case 70:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 544 "ncgen.y" #line 546 "ncgen.y"
{(yyval.mark)=listlength(stack);;} {(yyval.mark)=listlength(stack);;}
break; break;
case 71: case 71:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 545 "ncgen.y" #line 547 "ncgen.y"
{(yyval.mark)=(yyvsp[(2) - (3)].mark);;} {(yyval.mark)=(yyvsp[(2) - (3)].mark);;}
break; break;
case 72: case 72:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 548 "ncgen.y" #line 550 "ncgen.y"
{(yyval.mark)=listlength(stack); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));;} {(yyval.mark)=listlength(stack); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));;}
break; break;
case 73: case 73:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 550 "ncgen.y" #line 552 "ncgen.y"
{(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;} {(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;}
break; break;
case 74: case 74:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 554 "ncgen.y" #line 556 "ncgen.y"
{Symbol* dimsym = (yyvsp[(1) - (1)].sym); {Symbol* dimsym = (yyvsp[(1) - (1)].sym);
dimsym->objectclass = NC_DIM; dimsym->objectclass = NC_DIM;
/* Find the actual dimension*/ /* Find the actual dimension*/
@ -2312,7 +2312,7 @@ yyreduce:
case 75: case 75:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 568 "ncgen.y" #line 570 "ncgen.y"
{(yyval.mark)=listlength(stack); {(yyval.mark)=listlength(stack);
listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym)); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));
;} ;}
@ -2321,14 +2321,14 @@ yyreduce:
case 76: case 76:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 572 "ncgen.y" #line 574 "ncgen.y"
{(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;} {(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;}
break; break;
case 77: case 77:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 577 "ncgen.y" #line 579 "ncgen.y"
{ {
int i; int i;
Dimset dimset; Dimset dimset;
@ -2360,35 +2360,35 @@ yyreduce:
case 78: case 78:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 605 "ncgen.y" #line 607 "ncgen.y"
{(yyval.mark)=listlength(stack);;} {(yyval.mark)=listlength(stack);;}
break; break;
case 79: case 79:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 606 "ncgen.y" #line 608 "ncgen.y"
{(yyval.mark)=(yyvsp[(2) - (3)].mark);;} {(yyval.mark)=(yyvsp[(2) - (3)].mark);;}
break; break;
case 80: case 80:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 610 "ncgen.y" #line 612 "ncgen.y"
{(yyval.mark)=listlength(stack); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));;} {(yyval.mark)=listlength(stack); listpush(stack,(elem_t)(yyvsp[(1) - (1)].sym));;}
break; break;
case 81: case 81:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 612 "ncgen.y" #line 614 "ncgen.y"
{(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;} {(yyval.mark)=(yyvsp[(1) - (3)].mark); listpush(stack,(elem_t)(yyvsp[(3) - (3)].sym));;}
break; break;
case 82: case 82:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 617 "ncgen.y" #line 619 "ncgen.y"
{ /* Anonymous integer dimension. { /* Anonymous integer dimension.
Can only occur in type definitions*/ Can only occur in type definitions*/
char anon[32]; char anon[32];
@ -2403,7 +2403,7 @@ yyreduce:
case 83: case 83:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 627 "ncgen.y" #line 629 "ncgen.y"
{ /* Anonymous integer dimension. { /* Anonymous integer dimension.
Can only occur in type definitions*/ Can only occur in type definitions*/
char anon[32]; char anon[32];
@ -2422,7 +2422,7 @@ yyreduce:
case 84: case 84:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 647 "ncgen.y" #line 649 "ncgen.y"
{Symbol* vsym = (yyvsp[(1) - (1)].sym); {Symbol* vsym = (yyvsp[(1) - (1)].sym);
if(vsym->objectclass != NC_VAR) { if(vsym->objectclass != NC_VAR) {
derror("Undefined or forward referenced variable: %s",vsym->name); derror("Undefined or forward referenced variable: %s",vsym->name);
@ -2435,7 +2435,7 @@ yyreduce:
case 85: case 85:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 658 "ncgen.y" #line 660 "ncgen.y"
{Symbol* tsym = (yyvsp[(1) - (1)].sym); {Symbol* tsym = (yyvsp[(1) - (1)].sym);
if(tsym->objectclass != NC_TYPE) { if(tsym->objectclass != NC_TYPE) {
derror("Undefined or forward referenced type: %s",tsym->name); derror("Undefined or forward referenced type: %s",tsym->name);
@ -2448,7 +2448,7 @@ yyreduce:
case 86: case 86:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 669 "ncgen.y" #line 671 "ncgen.y"
{Symbol* tvsym = (yyvsp[(1) - (1)].sym); Symbol* sym; {Symbol* tvsym = (yyvsp[(1) - (1)].sym); Symbol* sym;
/* disambiguate*/ /* disambiguate*/
tvsym->objectclass = NC_VAR; tvsym->objectclass = NC_VAR;
@ -2472,35 +2472,35 @@ yyreduce:
case 87: case 87:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 687 "ncgen.y" #line 689 "ncgen.y"
{(yyval.sym)=(yyvsp[(1) - (1)].sym);;} {(yyval.sym)=(yyvsp[(1) - (1)].sym);;}
break; break;
case 88: case 88:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 694 "ncgen.y" #line 696 "ncgen.y"
{;} {;}
break; break;
case 89: case 89:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 694 "ncgen.y" #line 696 "ncgen.y"
{;} {;}
break; break;
case 90: case 90:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 698 "ncgen.y" #line 700 "ncgen.y"
{ (yyval.sym)=makeattribute((yyvsp[(2) - (4)].sym),NULL,NULL,(yyvsp[(4) - (4)].datalist),ATTRGLOBAL);;} { (yyval.sym)=makeattribute((yyvsp[(2) - (4)].sym),NULL,NULL,(yyvsp[(4) - (4)].datalist),ATTRGLOBAL);;}
break; break;
case 91: case 91:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 700 "ncgen.y" #line 702 "ncgen.y"
{Symbol* tsym = (yyvsp[(1) - (6)].sym); Symbol* vsym = (yyvsp[(2) - (6)].sym); Symbol* asym = (yyvsp[(4) - (6)].sym); {Symbol* tsym = (yyvsp[(1) - (6)].sym); Symbol* vsym = (yyvsp[(2) - (6)].sym); Symbol* asym = (yyvsp[(4) - (6)].sym);
if(vsym->objectclass == NC_VAR) { if(vsym->objectclass == NC_VAR) {
(yyval.sym)=makeattribute(asym,vsym,tsym,(yyvsp[(6) - (6)].datalist),ATTRVAR); (yyval.sym)=makeattribute(asym,vsym,tsym,(yyvsp[(6) - (6)].datalist),ATTRVAR);
@ -2514,7 +2514,7 @@ yyreduce:
case 92: case 92:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 709 "ncgen.y" #line 711 "ncgen.y"
{Symbol* sym = (yyvsp[(1) - (5)].sym); Symbol* asym = (yyvsp[(3) - (5)].sym); {Symbol* sym = (yyvsp[(1) - (5)].sym); Symbol* asym = (yyvsp[(3) - (5)].sym);
if(sym->objectclass == NC_VAR) { if(sym->objectclass == NC_VAR) {
(yyval.sym)=makeattribute(asym,sym,NULL,(yyvsp[(5) - (5)].datalist),ATTRVAR); (yyval.sym)=makeattribute(asym,sym,NULL,(yyvsp[(5) - (5)].datalist),ATTRVAR);
@ -2530,70 +2530,70 @@ yyreduce:
case 93: case 93:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 720 "ncgen.y" #line 722 "ncgen.y"
{(yyval.sym) = makespecial(_FILLVALUE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)(yyvsp[(5) - (5)].datalist),0);;} {(yyval.sym) = makespecial(_FILLVALUE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)(yyvsp[(5) - (5)].datalist),0);;}
break; break;
case 94: case 94:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 722 "ncgen.y" #line 724 "ncgen.y"
{(yyval.sym) = makespecial(_FILLVALUE_FLAG,(yyvsp[(2) - (6)].sym),(yyvsp[(1) - (6)].sym),(void*)(yyvsp[(6) - (6)].datalist),0);;} {(yyval.sym) = makespecial(_FILLVALUE_FLAG,(yyvsp[(2) - (6)].sym),(yyvsp[(1) - (6)].sym),(void*)(yyvsp[(6) - (6)].datalist),0);;}
break; break;
case 95: case 95:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 724 "ncgen.y" #line 726 "ncgen.y"
{(yyval.sym) = makespecial(_STORAGE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;} {(yyval.sym) = makespecial(_STORAGE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;}
break; break;
case 96: case 96:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 726 "ncgen.y" #line 728 "ncgen.y"
{(yyval.sym) = makespecial(_CHUNKSIZES_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)(yyvsp[(5) - (5)].datalist),0);;} {(yyval.sym) = makespecial(_CHUNKSIZES_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)(yyvsp[(5) - (5)].datalist),0);;}
break; break;
case 97: case 97:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 728 "ncgen.y" #line 730 "ncgen.y"
{(yyval.sym) = makespecial(_FLETCHER32_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;} {(yyval.sym) = makespecial(_FLETCHER32_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;}
break; break;
case 98: case 98:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 730 "ncgen.y" #line 732 "ncgen.y"
{(yyval.sym) = makespecial(_DEFLATE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;} {(yyval.sym) = makespecial(_DEFLATE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;}
break; break;
case 99: case 99:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 732 "ncgen.y" #line 734 "ncgen.y"
{(yyval.sym) = makespecial(_SHUFFLE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;} {(yyval.sym) = makespecial(_SHUFFLE_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;}
break; break;
case 100: case 100:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 734 "ncgen.y" #line 736 "ncgen.y"
{(yyval.sym) = makespecial(_ENDIAN_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;} {(yyval.sym) = makespecial(_ENDIAN_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;}
break; break;
case 101: case 101:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 736 "ncgen.y" #line 738 "ncgen.y"
{(yyval.sym) = makespecial(_NOFILL_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;} {(yyval.sym) = makespecial(_NOFILL_FLAG,(yyvsp[(1) - (5)].sym),NULL,(void*)&(yyvsp[(5) - (5)].constant),1);;}
break; break;
case 102: case 102:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 738 "ncgen.y" #line 740 "ncgen.y"
{ {
(yyval.sym) = makespecial(_FORMAT_FLAG,NULL,NULL,(void*)&(yyvsp[(4) - (4)].constant),1); (yyval.sym) = makespecial(_FORMAT_FLAG,NULL,NULL,(void*)&(yyvsp[(4) - (4)].constant),1);
;} ;}
@ -2602,7 +2602,7 @@ yyreduce:
case 103: case 103:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 745 "ncgen.y" #line 747 "ncgen.y"
{ {
(yyval.sym)=(yyvsp[(1) - (1)].sym); (yyval.sym)=(yyvsp[(1) - (1)].sym);
(yyvsp[(1) - (1)].sym)->is_ref=1; (yyvsp[(1) - (1)].sym)->is_ref=1;
@ -2613,7 +2613,7 @@ yyreduce:
case 104: case 104:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 751 "ncgen.y" #line 753 "ncgen.y"
{ {
(yyval.sym)=(yyvsp[(1) - (1)].sym); (yyval.sym)=(yyvsp[(1) - (1)].sym);
(yyvsp[(1) - (1)].sym)->is_ref=1; (yyvsp[(1) - (1)].sym)->is_ref=1;
@ -2625,238 +2625,238 @@ yyreduce:
case 106: case 106:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 760 "ncgen.y" #line 762 "ncgen.y"
{;} {;}
break; break;
case 107: case 107:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 761 "ncgen.y" #line 763 "ncgen.y"
{;} {;}
break; break;
case 110: case 110:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 769 "ncgen.y" #line 771 "ncgen.y"
{(yyvsp[(1) - (3)].sym)->data = (yyvsp[(3) - (3)].datalist);;} {(yyvsp[(1) - (3)].sym)->data = (yyvsp[(3) - (3)].datalist);;}
break; break;
case 111: case 111:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 772 "ncgen.y" #line 774 "ncgen.y"
{(yyval.datalist) = (yyvsp[(1) - (1)].datalist);;} {(yyval.datalist) = (yyvsp[(1) - (1)].datalist);;}
break; break;
case 112: case 112:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 773 "ncgen.y" #line 775 "ncgen.y"
{(yyval.datalist) = (yyvsp[(1) - (1)].datalist);;} {(yyval.datalist) = (yyvsp[(1) - (1)].datalist);;}
break; break;
case 113: case 113:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 777 "ncgen.y" #line 779 "ncgen.y"
{(yyval.datalist) = builddatalist(0);;} {(yyval.datalist) = builddatalist(0);;}
break; break;
case 114: case 114:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 781 "ncgen.y" #line 783 "ncgen.y"
{(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[(1) - (1)].constant)));;} {(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[(1) - (1)].constant)));;}
break; break;
case 115: case 115:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 783 "ncgen.y" #line 785 "ncgen.y"
{datalistextend((yyvsp[(1) - (3)].datalist),&((yyvsp[(3) - (3)].constant))); (yyval.datalist)=(yyvsp[(1) - (3)].datalist);;} {datalistextend((yyvsp[(1) - (3)].datalist),&((yyvsp[(3) - (3)].constant))); (yyval.datalist)=(yyvsp[(1) - (3)].datalist);;}
break; break;
case 116: case 116:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 787 "ncgen.y" #line 789 "ncgen.y"
{(yyval.constant)=(yyvsp[(1) - (1)].constant);;} {(yyval.constant)=(yyvsp[(1) - (1)].constant);;}
break; break;
case 117: case 117:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 788 "ncgen.y" #line 790 "ncgen.y"
{(yyval.constant)=builddatasublist((yyvsp[(2) - (3)].datalist));;} {(yyval.constant)=builddatasublist((yyvsp[(2) - (3)].datalist));;}
break; break;
case 118: case 118:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 792 "ncgen.y" #line 794 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_CHAR);;} {(yyval.constant)=makeconstdata(NC_CHAR);;}
break; break;
case 119: case 119:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 793 "ncgen.y" #line 795 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_BYTE);;} {(yyval.constant)=makeconstdata(NC_BYTE);;}
break; break;
case 120: case 120:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 794 "ncgen.y" #line 796 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_SHORT);;} {(yyval.constant)=makeconstdata(NC_SHORT);;}
break; break;
case 121: case 121:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 795 "ncgen.y" #line 797 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_INT);;} {(yyval.constant)=makeconstdata(NC_INT);;}
break; break;
case 122: case 122:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 796 "ncgen.y" #line 798 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_INT64);;} {(yyval.constant)=makeconstdata(NC_INT64);;}
break; break;
case 123: case 123:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 797 "ncgen.y" #line 799 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_UBYTE);;} {(yyval.constant)=makeconstdata(NC_UBYTE);;}
break; break;
case 124: case 124:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 798 "ncgen.y" #line 800 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_USHORT);;} {(yyval.constant)=makeconstdata(NC_USHORT);;}
break; break;
case 125: case 125:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 799 "ncgen.y" #line 801 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_UINT);;} {(yyval.constant)=makeconstdata(NC_UINT);;}
break; break;
case 126: case 126:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 800 "ncgen.y" #line 802 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_UINT64);;} {(yyval.constant)=makeconstdata(NC_UINT64);;}
break; break;
case 127: case 127:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 801 "ncgen.y" #line 803 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_FLOAT);;} {(yyval.constant)=makeconstdata(NC_FLOAT);;}
break; break;
case 128: case 128:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 802 "ncgen.y" #line 804 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_DOUBLE);;} {(yyval.constant)=makeconstdata(NC_DOUBLE);;}
break; break;
case 129: case 129:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 803 "ncgen.y" #line 805 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_STRING);;} {(yyval.constant)=makeconstdata(NC_STRING);;}
break; break;
case 130: case 130:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 804 "ncgen.y" #line 806 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_OPAQUE);;} {(yyval.constant)=makeconstdata(NC_OPAQUE);;}
break; break;
case 131: case 131:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 805 "ncgen.y" #line 807 "ncgen.y"
{(yyval.constant)=makeenumconst((yyvsp[(1) - (1)].sym));;} {(yyval.constant)=makeenumconst((yyvsp[(1) - (1)].sym));;}
break; break;
case 132: case 132:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 806 "ncgen.y" #line 808 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_FILLVALUE);;} {(yyval.constant)=makeconstdata(NC_FILLVALUE);;}
break; break;
case 133: case 133:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 810 "ncgen.y" #line 812 "ncgen.y"
{(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[(1) - (1)].constant)));;} {(yyval.datalist) = builddatalist(0); datalistextend((yyval.datalist),&((yyvsp[(1) - (1)].constant)));;}
break; break;
case 134: case 134:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 811 "ncgen.y" #line 813 "ncgen.y"
{(yyval.datalist)=(yyvsp[(1) - (3)].datalist); datalistextend((yyvsp[(1) - (3)].datalist),&((yyvsp[(3) - (3)].constant)));;} {(yyval.datalist)=(yyvsp[(1) - (3)].datalist); datalistextend((yyvsp[(1) - (3)].datalist),&((yyvsp[(3) - (3)].constant)));;}
break; break;
case 135: case 135:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 816 "ncgen.y" #line 818 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_INT);;} {(yyval.constant)=makeconstdata(NC_INT);;}
break; break;
case 136: case 136:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 818 "ncgen.y" #line 820 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_UINT);;} {(yyval.constant)=makeconstdata(NC_UINT);;}
break; break;
case 137: case 137:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 820 "ncgen.y" #line 822 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_INT64);;} {(yyval.constant)=makeconstdata(NC_INT64);;}
break; break;
case 138: case 138:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 822 "ncgen.y" #line 824 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_UINT64);;} {(yyval.constant)=makeconstdata(NC_UINT64);;}
break; break;
case 139: case 139:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 826 "ncgen.y" #line 828 "ncgen.y"
{(yyval.constant)=makeconstdata(NC_STRING);;} {(yyval.constant)=makeconstdata(NC_STRING);;}
break; break;
case 140: case 140:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 830 "ncgen.y" #line 832 "ncgen.y"
{(yyval.constant)=(yyvsp[(1) - (1)].constant);;} {(yyval.constant)=(yyvsp[(1) - (1)].constant);;}
break; break;
case 141: case 141:
/* Line 1464 of yacc.c */ /* Line 1464 of yacc.c */
#line 831 "ncgen.y" #line 833 "ncgen.y"
{(yyval.constant)=(yyvsp[(1) - (1)].constant);;} {(yyval.constant)=(yyvsp[(1) - (1)].constant);;}
break; break;
@ -3075,7 +3075,7 @@ yyreturn:
/* Line 1684 of yacc.c */ /* Line 1684 of yacc.c */
#line 835 "ncgen.y" #line 837 "ncgen.y"
#ifndef NO_STDARG #ifndef NO_STDARG