gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gawk-diffs] [SCM] gawk branch, feature/regex-type, updated. gawk-4.1.0-


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, feature/regex-type, updated. gawk-4.1.0-1395-ga95aad2
Date: Sun, 03 May 2015 14:43:00 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, feature/regex-type has been updated
       via  a95aad26e785335f6cca2d9009388f4a74ae3635 (commit)
       via  9287b67afa6d8d3000a9c89c5738272ce59ec862 (commit)
       via  b232ef3a2ec89298148ff1802d6398365f2891da (commit)
       via  d38a65f812c74acc859c8ea36e26c28cfbeffcc9 (commit)
       via  665ec924795675c32d7178613367ec9f7a7d08e1 (commit)
       via  7e6fcced8b12b2e6f0c04c9f36841a963a660b86 (commit)
       via  a7b3553c2c3aa362d28493d75691a8dc86f707ba (commit)
       via  f586cd49506935eb48a6afeaff6988087f947ed1 (commit)
       via  ff9ab7fc13c4fb96477fa07d681bad2c24b78ade (commit)
       via  6399f5d208e8952f58e94502ab827cdae10b3787 (commit)
      from  09c533438cd709076c29bb61585833e2c4d67f97 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=a95aad26e785335f6cca2d9009388f4a74ae3635

commit a95aad26e785335f6cca2d9009388f4a74ae3635
Merge: 09c5334 9287b67
Author: Arnold D. Robbins <address@hidden>
Date:   Sun May 3 17:42:52 2015 +0300

    Merge branch 'master' into feature/regex-type

diff --cc ChangeLog
index 78a512f,333278b..ad0d35d
--- a/ChangeLog
+++ b/ChangeLog
@@@ -1,10 -1,27 +1,32 @@@
+ 2015-05-01         Arnold D. Robbins     <address@hidden>
+ 
+       * awkgram.y: Make sure values are not null in param list.
+       Avoids core dump for `function f(func, a) {}'. Thanks to
+       Tibor Palinkas <address@hidden>.
+ 
+ 2015-04-30         Arnold D. Robbins     <address@hidden>
+ 
+       * Makefile.am: Take --program-prefix into account when
+       installing/uninstalling the symlinks, especially 'awk'.
+       Thanks to Steffen Nurpmeso <address@hidden> for
+       the report.
+ 
+       Unrelated:
+ 
+       * awkgram.y (yylex): Yet Another Fix for parsing bracket
+       expressions. Thanks again to Andrew Schorr.
+ 
+ 2015-04-29         Arnold D. Robbins     <address@hidden>
+ 
+       * 4.1.2: Release tar ball made.
+ 
  2015-04-28         Arnold D. Robbins     <address@hidden>
  
 +      * builtin.c (isarray): Add lint warning that isarray()
 +      is deprecated.
 +
 +2015-04-28         Arnold D. Robbins     <address@hidden>
 +
        * awkgram.y (yylex): Rework the bracket handling from zero.
        Thanks to Michal Jaegermann for yet another test case.
  
diff --cc awkgram.c
index 144f18a,533e40e..93ab99d
--- a/awkgram.c
+++ b/awkgram.c
@@@ -668,24 -666,22 +668,24 @@@ static const yytype_uint16 yyrline[] 
         0,   210,   210,   212,   217,   218,   222,   234,   239,   250,
       257,   263,   272,   280,   282,   287,   295,   297,   303,   311,
       321,   351,   365,   379,   387,   398,   410,   412,   414,   420,
 -     428,   429,   433,   433,   469,   468,   502,   504,   509,   515,
 -     543,   548,   549,   553,   555,   557,   564,   654,   696,   738,
 -     851,   858,   865,   875,   884,   893,   902,   913,   929,   928,
 -     952,   964,   964,  1062,  1062,  1095,  1125,  1131,  1132,  1138,
 -    1139,  1146,  1151,  1163,  1177,  1179,  1187,  1192,  1194,  1202,
 -    1204,  1213,  1214,  1222,  1227,  1227,  1238,  1242,  1250,  1251,
 -    1254,  1256,  1261,  1262,  1271,  1272,  1277,  1282,  1291,  1293,
 -    1295,  1302,  1303,  1309,  1310,  1315,  1317,  1322,  1324,  1332,
 -    1337,  1346,  1353,  1355,  1357,  1373,  1383,  1390,  1392,  1397,
 -    1399,  1401,  1409,  1411,  1416,  1418,  1423,  1425,  1427,  1477,
 -    1479,  1481,  1483,  1485,  1487,  1489,  1491,  1505,  1510,  1515,
 -    1540,  1546,  1548,  1550,  1552,  1554,  1556,  1561,  1565,  1597,
 -    1599,  1605,  1611,  1624,  1625,  1626,  1631,  1636,  1640,  1644,
 -    1659,  1672,  1677,  1714,  1743,  1744,  1750,  1751,  1756,  1758,
 -    1765,  1782,  1799,  1801,  1808,  1813,  1821,  1831,  1843,  1852,
 -    1856,  1860,  1864,  1868,  1872,  1875,  1877,  1881,  1885,  1889
 +     428,   429,   433,   433,   469,   468,   502,   524,   526,   531,
 +     537,   565,   570,   571,   575,   577,   579,   586,   676,   718,
 +     760,   873,   880,   887,   897,   906,   915,   924,   935,   951,
 +     950,   974,   986,   986,  1084,  1084,  1117,  1147,  1153,  1154,
 +    1160,  1161,  1168,  1173,  1185,  1199,  1201,  1209,  1214,  1216,
 +    1224,  1233,  1235,  1244,  1245,  1253,  1258,  1258,  1269,  1273,
 +    1281,  1282,  1285,  1287,  1292,  1293,  1302,  1303,  1308,  1313,
-     1319,  1321,  1323,  1330,  1331,  1337,  1338,  1343,  1345,  1350,
-     1352,  1360,  1365,  1374,  1375,  1380,  1382,  1387,  1389,  1397,
-     1402,  1410,  1411,  1416,  1423,  1427,  1429,  1431,  1444,  1461,
-     1471,  1478,  1480,  1485,  1487,  1489,  1497,  1499,  1504,  1506,
-     1511,  1513,  1515,  1565,  1567,  1569,  1571,  1573,  1575,  1577,
-     1579,  1593,  1598,  1603,  1628,  1634,  1636,  1638,  1640,  1642,
-     1644,  1649,  1653,  1685,  1687,  1693,  1699,  1712,  1713,  1714,
-     1719,  1724,  1728,  1732,  1747,  1760,  1765,  1802,  1831,  1832,
-     1838,  1839,  1844,  1846,  1853,  1870,  1887,  1889,  1896,  1901,
-     1909,  1919,  1931,  1940,  1944,  1948,  1952,  1956,  1960,  1963,
-     1965,  1969,  1973,  1977
++    1322,  1324,  1326,  1333,  1334,  1340,  1341,  1346,  1348,  1353,
++    1355,  1363,  1368,  1377,  1378,  1383,  1385,  1390,  1392,  1400,
++    1405,  1413,  1414,  1419,  1426,  1430,  1432,  1434,  1447,  1464,
++    1474,  1481,  1483,  1488,  1490,  1492,  1500,  1502,  1507,  1509,
++    1514,  1516,  1518,  1568,  1570,  1572,  1574,  1576,  1578,  1580,
++    1582,  1596,  1601,  1606,  1631,  1637,  1639,  1641,  1643,  1645,
++    1647,  1652,  1656,  1688,  1690,  1696,  1702,  1715,  1716,  1717,
++    1722,  1727,  1731,  1735,  1750,  1763,  1768,  1805,  1834,  1835,
++    1841,  1842,  1847,  1849,  1856,  1873,  1890,  1892,  1899,  1904,
++    1912,  1922,  1934,  1943,  1947,  1951,  1955,  1959,  1963,  1966,
++    1968,  1972,  1976,  1980
  };
  #endif
  
@@@ -3205,84 -3127,87 +3205,87 @@@ regular_print
                (yyvsp[0])->param_count = 0;
                (yyval) = list_create((yyvsp[0]));
          }
 -#line 3131 "awkgram.c" /* yacc.c:1646  */
 +#line 3209 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 97:
 -#line 1283 "awkgram.y" /* yacc.c:1646  */
 +  case 99:
 +#line 1314 "awkgram.y" /* yacc.c:1646  */
      {
-               (yyvsp[0])->param_count =  (yyvsp[-2])->lasti->param_count + 1;
-               (yyval) = list_append((yyvsp[-2]), (yyvsp[0]));
-               yyerrok;
+               if ((yyvsp[-2]) != NULL && (yyvsp[0]) != NULL) {
+                       (yyvsp[0])->param_count =  
(yyvsp[-2])->lasti->param_count + 1;
+                       (yyval) = list_append((yyvsp[-2]), (yyvsp[0]));
+                       yyerrok;
+               } else
+                       (yyval) = NULL;
          }
- #line 3219 "awkgram.c" /* yacc.c:1646  */
 -#line 3144 "awkgram.c" /* yacc.c:1646  */
++#line 3222 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 98:
 -#line 1292 "awkgram.y" /* yacc.c:1646  */
 +  case 100:
- #line 1320 "awkgram.y" /* yacc.c:1646  */
++#line 1323 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 3225 "awkgram.c" /* yacc.c:1646  */
 -#line 3150 "awkgram.c" /* yacc.c:1646  */
++#line 3228 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 99:
 -#line 1294 "awkgram.y" /* yacc.c:1646  */
 +  case 101:
- #line 1322 "awkgram.y" /* yacc.c:1646  */
++#line 1325 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[-1]); }
- #line 3231 "awkgram.c" /* yacc.c:1646  */
 -#line 3156 "awkgram.c" /* yacc.c:1646  */
++#line 3234 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 100:
 -#line 1296 "awkgram.y" /* yacc.c:1646  */
 +  case 102:
- #line 1324 "awkgram.y" /* yacc.c:1646  */
++#line 1327 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[-2]); }
- #line 3237 "awkgram.c" /* yacc.c:1646  */
 -#line 3162 "awkgram.c" /* yacc.c:1646  */
++#line 3240 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 101:
 -#line 1302 "awkgram.y" /* yacc.c:1646  */
 +  case 103:
- #line 1330 "awkgram.y" /* yacc.c:1646  */
++#line 1333 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 3243 "awkgram.c" /* yacc.c:1646  */
 -#line 3168 "awkgram.c" /* yacc.c:1646  */
++#line 3246 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 102:
 -#line 1304 "awkgram.y" /* yacc.c:1646  */
 +  case 104:
- #line 1332 "awkgram.y" /* yacc.c:1646  */
++#line 1335 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3249 "awkgram.c" /* yacc.c:1646  */
 -#line 3174 "awkgram.c" /* yacc.c:1646  */
++#line 3252 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 103:
 -#line 1309 "awkgram.y" /* yacc.c:1646  */
 +  case 105:
- #line 1337 "awkgram.y" /* yacc.c:1646  */
++#line 1340 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 3255 "awkgram.c" /* yacc.c:1646  */
 -#line 3180 "awkgram.c" /* yacc.c:1646  */
++#line 3258 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 104:
 -#line 1311 "awkgram.y" /* yacc.c:1646  */
 +  case 106:
- #line 1339 "awkgram.y" /* yacc.c:1646  */
++#line 1342 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3261 "awkgram.c" /* yacc.c:1646  */
 -#line 3186 "awkgram.c" /* yacc.c:1646  */
++#line 3264 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 105:
 -#line 1316 "awkgram.y" /* yacc.c:1646  */
 +  case 107:
- #line 1344 "awkgram.y" /* yacc.c:1646  */
++#line 1347 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_expression_list(NULL, (yyvsp[0])); }
- #line 3267 "awkgram.c" /* yacc.c:1646  */
 -#line 3192 "awkgram.c" /* yacc.c:1646  */
++#line 3270 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 106:
 -#line 1318 "awkgram.y" /* yacc.c:1646  */
 +  case 108:
- #line 1346 "awkgram.y" /* yacc.c:1646  */
++#line 1349 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = mk_expression_list((yyvsp[-2]), (yyvsp[0]));
                yyerrok;
          }
- #line 3276 "awkgram.c" /* yacc.c:1646  */
 -#line 3201 "awkgram.c" /* yacc.c:1646  */
++#line 3279 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 107:
 -#line 1323 "awkgram.y" /* yacc.c:1646  */
 +  case 109:
- #line 1351 "awkgram.y" /* yacc.c:1646  */
++#line 1354 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 3282 "awkgram.c" /* yacc.c:1646  */
 -#line 3207 "awkgram.c" /* yacc.c:1646  */
++#line 3285 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 108:
 -#line 1325 "awkgram.y" /* yacc.c:1646  */
 +  case 110:
- #line 1353 "awkgram.y" /* yacc.c:1646  */
++#line 1356 "awkgram.y" /* yacc.c:1646  */
      {
                /*
                 * Returning the expression list instead of NULL lets
@@@ -3290,152 -3215,52 +3293,152 @@@
                 */
                (yyval) = (yyvsp[-1]);
          }
- #line 3294 "awkgram.c" /* yacc.c:1646  */
 -#line 3219 "awkgram.c" /* yacc.c:1646  */
++#line 3297 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 109:
 -#line 1333 "awkgram.y" /* yacc.c:1646  */
 +  case 111:
- #line 1361 "awkgram.y" /* yacc.c:1646  */
++#line 1364 "awkgram.y" /* yacc.c:1646  */
      {
                /* Ditto */
                (yyval) = mk_expression_list((yyvsp[-2]), (yyvsp[0]));
          }
- #line 3303 "awkgram.c" /* yacc.c:1646  */
 -#line 3228 "awkgram.c" /* yacc.c:1646  */
++#line 3306 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 110:
 -#line 1338 "awkgram.y" /* yacc.c:1646  */
 +  case 112:
- #line 1366 "awkgram.y" /* yacc.c:1646  */
++#line 1369 "awkgram.y" /* yacc.c:1646  */
      {
                /* Ditto */
                (yyval) = (yyvsp[-2]);
          }
- #line 3312 "awkgram.c" /* yacc.c:1646  */
 -#line 3237 "awkgram.c" /* yacc.c:1646  */
++#line 3315 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 111:
 -#line 1347 "awkgram.y" /* yacc.c:1646  */
 +  case 113:
- #line 1374 "awkgram.y" /* yacc.c:1646  */
++#line 1377 "awkgram.y" /* yacc.c:1646  */
 +    { (yyval) = NULL; }
- #line 3318 "awkgram.c" /* yacc.c:1646  */
++#line 3321 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 114:
- #line 1376 "awkgram.y" /* yacc.c:1646  */
++#line 1379 "awkgram.y" /* yacc.c:1646  */
 +    { (yyval) = (yyvsp[0]); }
- #line 3324 "awkgram.c" /* yacc.c:1646  */
++#line 3327 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 115:
- #line 1381 "awkgram.y" /* yacc.c:1646  */
++#line 1384 "awkgram.y" /* yacc.c:1646  */
 +    { (yyval) = mk_expression_list(NULL, (yyvsp[0])); }
- #line 3330 "awkgram.c" /* yacc.c:1646  */
++#line 3333 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 116:
- #line 1383 "awkgram.y" /* yacc.c:1646  */
++#line 1386 "awkgram.y" /* yacc.c:1646  */
 +    {
 +              (yyval) = mk_expression_list((yyvsp[-2]), (yyvsp[0]));
 +              yyerrok;
 +        }
- #line 3339 "awkgram.c" /* yacc.c:1646  */
++#line 3342 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 117:
- #line 1388 "awkgram.y" /* yacc.c:1646  */
++#line 1391 "awkgram.y" /* yacc.c:1646  */
 +    { (yyval) = NULL; }
- #line 3345 "awkgram.c" /* yacc.c:1646  */
++#line 3348 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 118:
- #line 1390 "awkgram.y" /* yacc.c:1646  */
++#line 1393 "awkgram.y" /* yacc.c:1646  */
 +    {
 +              /*
 +               * Returning the expression list instead of NULL lets
 +               * snode get a list of arguments that it can count.
 +               */
 +              (yyval) = (yyvsp[-1]);
 +        }
- #line 3357 "awkgram.c" /* yacc.c:1646  */
++#line 3360 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 119:
- #line 1398 "awkgram.y" /* yacc.c:1646  */
++#line 1401 "awkgram.y" /* yacc.c:1646  */
 +    {
 +              /* Ditto */
 +              (yyval) = mk_expression_list((yyvsp[-2]), (yyvsp[0]));
 +        }
- #line 3366 "awkgram.c" /* yacc.c:1646  */
++#line 3369 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 120:
- #line 1403 "awkgram.y" /* yacc.c:1646  */
++#line 1406 "awkgram.y" /* yacc.c:1646  */
 +    {
 +              /* Ditto */
 +              (yyval) = (yyvsp[-2]);
 +        }
- #line 3375 "awkgram.c" /* yacc.c:1646  */
++#line 3378 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 121:
- #line 1410 "awkgram.y" /* yacc.c:1646  */
++#line 1413 "awkgram.y" /* yacc.c:1646  */
 +    { (yyval) = (yyvsp[0]); }
- #line 3381 "awkgram.c" /* yacc.c:1646  */
++#line 3384 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 122:
- #line 1411 "awkgram.y" /* yacc.c:1646  */
++#line 1414 "awkgram.y" /* yacc.c:1646  */
 +    { (yyval) = list_create((yyvsp[0])); }
- #line 3387 "awkgram.c" /* yacc.c:1646  */
++#line 3390 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 123:
- #line 1417 "awkgram.y" /* yacc.c:1646  */
++#line 1420 "awkgram.y" /* yacc.c:1646  */
      {
                if (do_lint && (yyvsp[0])->lasti->opcode == Op_match_rec)
                        lintwarn_ln((yyvsp[-1])->source_line,
                                _("regular expression on right of assignment"));
                (yyval) = mk_assignment((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1]));
          }
- #line 3398 "awkgram.c" /* yacc.c:1646  */
 -#line 3248 "awkgram.c" /* yacc.c:1646  */
++#line 3401 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 112:
 -#line 1354 "awkgram.y" /* yacc.c:1646  */
 +  case 124:
- #line 1424 "awkgram.y" /* yacc.c:1646  */
++#line 1427 "awkgram.y" /* yacc.c:1646  */
 +    {
 +              (yyval) = mk_assignment((yyvsp[-2]), list_create((yyvsp[0])), 
(yyvsp[-1]));
 +        }
- #line 3406 "awkgram.c" /* yacc.c:1646  */
++#line 3409 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 125:
- #line 1428 "awkgram.y" /* yacc.c:1646  */
++#line 1431 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_boolean((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3412 "awkgram.c" /* yacc.c:1646  */
 -#line 3254 "awkgram.c" /* yacc.c:1646  */
++#line 3415 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 113:
 -#line 1356 "awkgram.y" /* yacc.c:1646  */
 +  case 126:
- #line 1430 "awkgram.y" /* yacc.c:1646  */
++#line 1433 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_boolean((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3418 "awkgram.c" /* yacc.c:1646  */
 -#line 3260 "awkgram.c" /* yacc.c:1646  */
++#line 3421 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 114:
 -#line 1358 "awkgram.y" /* yacc.c:1646  */
 +  case 127:
- #line 1432 "awkgram.y" /* yacc.c:1646  */
++#line 1435 "awkgram.y" /* yacc.c:1646  */
 +    {
 +              if ((yyvsp[-2])->lasti->opcode == Op_match_rec)
 +                      warning_ln((yyvsp[-1])->source_line,
 +                              _("regular expression on left of `~' or `!~' 
operator"));
 +
 +              assert((yyvsp[0])->opcode == Op_push_re
 +                      && (yyvsp[0])->memory->type == Node_hardregex);
 +              /* RHS is @/.../ */
 +              (yyvsp[-1])->memory = (yyvsp[0])->memory;
 +              bcfree((yyvsp[0]));
 +              (yyval) = list_append((yyvsp[-2]), (yyvsp[-1]));
 +        }
- #line 3435 "awkgram.c" /* yacc.c:1646  */
++#line 3438 "awkgram.c" /* yacc.c:1646  */
 +    break;
 +
 +  case 128:
- #line 1445 "awkgram.y" /* yacc.c:1646  */
++#line 1448 "awkgram.y" /* yacc.c:1646  */
      {
                if ((yyvsp[-2])->lasti->opcode == Op_match_rec)
                        warning_ln((yyvsp[-1])->source_line,
@@@ -3452,11 -3276,11 +3455,11 @@@
                        (yyval) = list_append(list_merge((yyvsp[-2]), 
(yyvsp[0])), (yyvsp[-1]));
                }
          }
- #line 3456 "awkgram.c" /* yacc.c:1646  */
 -#line 3280 "awkgram.c" /* yacc.c:1646  */
++#line 3459 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 115:
 -#line 1374 "awkgram.y" /* yacc.c:1646  */
 +  case 129:
- #line 1462 "awkgram.y" /* yacc.c:1646  */
++#line 1465 "awkgram.y" /* yacc.c:1646  */
      {
                if (do_lint_old)
                        warning_ln((yyvsp[-1])->source_line,
@@@ -3466,91 -3290,91 +3469,91 @@@
                (yyvsp[-1])->expr_count = 1;
                (yyval) = list_append(list_merge((yyvsp[-2]), (yyvsp[0])), 
(yyvsp[-1]));
          }
- #line 3470 "awkgram.c" /* yacc.c:1646  */
 -#line 3294 "awkgram.c" /* yacc.c:1646  */
++#line 3473 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 116:
 -#line 1384 "awkgram.y" /* yacc.c:1646  */
 +  case 130:
- #line 1472 "awkgram.y" /* yacc.c:1646  */
++#line 1475 "awkgram.y" /* yacc.c:1646  */
      {
                if (do_lint && (yyvsp[0])->lasti->opcode == Op_match_rec)
                        lintwarn_ln((yyvsp[-1])->source_line,
                                _("regular expression on right of comparison"));
                (yyval) = list_append(list_merge((yyvsp[-2]), (yyvsp[0])), 
(yyvsp[-1]));
          }
- #line 3481 "awkgram.c" /* yacc.c:1646  */
 -#line 3305 "awkgram.c" /* yacc.c:1646  */
++#line 3484 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 117:
 -#line 1391 "awkgram.y" /* yacc.c:1646  */
 +  case 131:
- #line 1479 "awkgram.y" /* yacc.c:1646  */
++#line 1482 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_condition((yyvsp[-4]), (yyvsp[-3]), (yyvsp[-2]), 
(yyvsp[-1]), (yyvsp[0])); }
- #line 3487 "awkgram.c" /* yacc.c:1646  */
 -#line 3311 "awkgram.c" /* yacc.c:1646  */
++#line 3490 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 118:
 -#line 1393 "awkgram.y" /* yacc.c:1646  */
 +  case 132:
- #line 1481 "awkgram.y" /* yacc.c:1646  */
++#line 1484 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3493 "awkgram.c" /* yacc.c:1646  */
 -#line 3317 "awkgram.c" /* yacc.c:1646  */
++#line 3496 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 119:
 -#line 1398 "awkgram.y" /* yacc.c:1646  */
 +  case 133:
- #line 1486 "awkgram.y" /* yacc.c:1646  */
++#line 1489 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3499 "awkgram.c" /* yacc.c:1646  */
 -#line 3323 "awkgram.c" /* yacc.c:1646  */
++#line 3502 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 120:
 -#line 1400 "awkgram.y" /* yacc.c:1646  */
 +  case 134:
- #line 1488 "awkgram.y" /* yacc.c:1646  */
++#line 1491 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3505 "awkgram.c" /* yacc.c:1646  */
 -#line 3329 "awkgram.c" /* yacc.c:1646  */
++#line 3508 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 121:
 -#line 1402 "awkgram.y" /* yacc.c:1646  */
 +  case 135:
- #line 1490 "awkgram.y" /* yacc.c:1646  */
++#line 1493 "awkgram.y" /* yacc.c:1646  */
      { 
                (yyvsp[0])->opcode = Op_assign_quotient;
                (yyval) = (yyvsp[0]);
          }
- #line 3514 "awkgram.c" /* yacc.c:1646  */
 -#line 3338 "awkgram.c" /* yacc.c:1646  */
++#line 3517 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 122:
 -#line 1410 "awkgram.y" /* yacc.c:1646  */
 +  case 136:
- #line 1498 "awkgram.y" /* yacc.c:1646  */
++#line 1501 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3520 "awkgram.c" /* yacc.c:1646  */
 -#line 3344 "awkgram.c" /* yacc.c:1646  */
++#line 3523 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 123:
 -#line 1412 "awkgram.y" /* yacc.c:1646  */
 +  case 137:
- #line 1500 "awkgram.y" /* yacc.c:1646  */
++#line 1503 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3526 "awkgram.c" /* yacc.c:1646  */
 -#line 3350 "awkgram.c" /* yacc.c:1646  */
++#line 3529 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 124:
 -#line 1417 "awkgram.y" /* yacc.c:1646  */
 +  case 138:
- #line 1505 "awkgram.y" /* yacc.c:1646  */
++#line 1508 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3532 "awkgram.c" /* yacc.c:1646  */
 -#line 3356 "awkgram.c" /* yacc.c:1646  */
++#line 3535 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 125:
 -#line 1419 "awkgram.y" /* yacc.c:1646  */
 +  case 139:
- #line 1507 "awkgram.y" /* yacc.c:1646  */
++#line 1510 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3538 "awkgram.c" /* yacc.c:1646  */
 -#line 3362 "awkgram.c" /* yacc.c:1646  */
++#line 3541 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 126:
 -#line 1424 "awkgram.y" /* yacc.c:1646  */
 +  case 140:
- #line 1512 "awkgram.y" /* yacc.c:1646  */
++#line 1515 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3544 "awkgram.c" /* yacc.c:1646  */
 -#line 3368 "awkgram.c" /* yacc.c:1646  */
++#line 3547 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 127:
 -#line 1426 "awkgram.y" /* yacc.c:1646  */
 +  case 141:
- #line 1514 "awkgram.y" /* yacc.c:1646  */
++#line 1517 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3550 "awkgram.c" /* yacc.c:1646  */
 -#line 3374 "awkgram.c" /* yacc.c:1646  */
++#line 3553 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 128:
 -#line 1428 "awkgram.y" /* yacc.c:1646  */
 +  case 142:
- #line 1516 "awkgram.y" /* yacc.c:1646  */
++#line 1519 "awkgram.y" /* yacc.c:1646  */
      {
                int count = 2;
                bool is_simple_var = false;
@@@ -3597,47 -3421,47 +3600,47 @@@
                                max_args = count;
                }
          }
- #line 3601 "awkgram.c" /* yacc.c:1646  */
 -#line 3425 "awkgram.c" /* yacc.c:1646  */
++#line 3604 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 130:
 -#line 1480 "awkgram.y" /* yacc.c:1646  */
 +  case 144:
- #line 1568 "awkgram.y" /* yacc.c:1646  */
++#line 1571 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3607 "awkgram.c" /* yacc.c:1646  */
 -#line 3431 "awkgram.c" /* yacc.c:1646  */
++#line 3610 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 131:
 -#line 1482 "awkgram.y" /* yacc.c:1646  */
 +  case 145:
- #line 1570 "awkgram.y" /* yacc.c:1646  */
++#line 1573 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3613 "awkgram.c" /* yacc.c:1646  */
 -#line 3437 "awkgram.c" /* yacc.c:1646  */
++#line 3616 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 132:
 -#line 1484 "awkgram.y" /* yacc.c:1646  */
 +  case 146:
- #line 1572 "awkgram.y" /* yacc.c:1646  */
++#line 1575 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3619 "awkgram.c" /* yacc.c:1646  */
 -#line 3443 "awkgram.c" /* yacc.c:1646  */
++#line 3622 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 133:
 -#line 1486 "awkgram.y" /* yacc.c:1646  */
 +  case 147:
- #line 1574 "awkgram.y" /* yacc.c:1646  */
++#line 1577 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3625 "awkgram.c" /* yacc.c:1646  */
 -#line 3449 "awkgram.c" /* yacc.c:1646  */
++#line 3628 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 134:
 -#line 1488 "awkgram.y" /* yacc.c:1646  */
 +  case 148:
- #line 1576 "awkgram.y" /* yacc.c:1646  */
++#line 1579 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3631 "awkgram.c" /* yacc.c:1646  */
 -#line 3455 "awkgram.c" /* yacc.c:1646  */
++#line 3634 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 135:
 -#line 1490 "awkgram.y" /* yacc.c:1646  */
 +  case 149:
- #line 1578 "awkgram.y" /* yacc.c:1646  */
++#line 1581 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3637 "awkgram.c" /* yacc.c:1646  */
 -#line 3461 "awkgram.c" /* yacc.c:1646  */
++#line 3640 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 136:
 -#line 1492 "awkgram.y" /* yacc.c:1646  */
 +  case 150:
- #line 1580 "awkgram.y" /* yacc.c:1646  */
++#line 1583 "awkgram.y" /* yacc.c:1646  */
      {
                /*
                 * In BEGINFILE/ENDFILE, allow `getline [var] < file'
@@@ -3651,29 -3475,29 +3654,29 @@@
                                _("non-redirected `getline' undefined inside 
END action"));
                (yyval) = mk_getline((yyvsp[-2]), (yyvsp[-1]), (yyvsp[0]), 
redirect_input);
          }
- #line 3655 "awkgram.c" /* yacc.c:1646  */
 -#line 3479 "awkgram.c" /* yacc.c:1646  */
++#line 3658 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 137:
 -#line 1506 "awkgram.y" /* yacc.c:1646  */
 +  case 151:
- #line 1594 "awkgram.y" /* yacc.c:1646  */
++#line 1597 "awkgram.y" /* yacc.c:1646  */
      {
                (yyvsp[0])->opcode = Op_postincrement;
                (yyval) = mk_assignment((yyvsp[-1]), NULL, (yyvsp[0]));
          }
- #line 3664 "awkgram.c" /* yacc.c:1646  */
 -#line 3488 "awkgram.c" /* yacc.c:1646  */
++#line 3667 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 138:
 -#line 1511 "awkgram.y" /* yacc.c:1646  */
 +  case 152:
- #line 1599 "awkgram.y" /* yacc.c:1646  */
++#line 1602 "awkgram.y" /* yacc.c:1646  */
      {
                (yyvsp[0])->opcode = Op_postdecrement;
                (yyval) = mk_assignment((yyvsp[-1]), NULL, (yyvsp[0]));
          }
- #line 3673 "awkgram.c" /* yacc.c:1646  */
 -#line 3497 "awkgram.c" /* yacc.c:1646  */
++#line 3676 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 139:
 -#line 1516 "awkgram.y" /* yacc.c:1646  */
 +  case 153:
- #line 1604 "awkgram.y" /* yacc.c:1646  */
++#line 1607 "awkgram.y" /* yacc.c:1646  */
      {
                if (do_lint_old) {
                    warning_ln((yyvsp[-1])->source_line,
@@@ -3693,64 -3517,64 +3696,64 @@@
                        (yyval) = list_append(list_merge(t, (yyvsp[0])), 
(yyvsp[-1]));
                }
          }
- #line 3697 "awkgram.c" /* yacc.c:1646  */
 -#line 3521 "awkgram.c" /* yacc.c:1646  */
++#line 3700 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 140:
 -#line 1541 "awkgram.y" /* yacc.c:1646  */
 +  case 154:
- #line 1629 "awkgram.y" /* yacc.c:1646  */
++#line 1632 "awkgram.y" /* yacc.c:1646  */
      {
                  (yyval) = mk_getline((yyvsp[-1]), (yyvsp[0]), (yyvsp[-3]), 
(yyvsp[-2])->redir_type);
                  bcfree((yyvsp[-2]));
                }
- #line 3706 "awkgram.c" /* yacc.c:1646  */
 -#line 3530 "awkgram.c" /* yacc.c:1646  */
++#line 3709 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 141:
 -#line 1547 "awkgram.y" /* yacc.c:1646  */
 +  case 155:
- #line 1635 "awkgram.y" /* yacc.c:1646  */
++#line 1638 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3712 "awkgram.c" /* yacc.c:1646  */
 -#line 3536 "awkgram.c" /* yacc.c:1646  */
++#line 3715 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 142:
 -#line 1549 "awkgram.y" /* yacc.c:1646  */
 +  case 156:
- #line 1637 "awkgram.y" /* yacc.c:1646  */
++#line 1640 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3718 "awkgram.c" /* yacc.c:1646  */
 -#line 3542 "awkgram.c" /* yacc.c:1646  */
++#line 3721 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 143:
 -#line 1551 "awkgram.y" /* yacc.c:1646  */
 +  case 157:
- #line 1639 "awkgram.y" /* yacc.c:1646  */
++#line 1642 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3724 "awkgram.c" /* yacc.c:1646  */
 -#line 3548 "awkgram.c" /* yacc.c:1646  */
++#line 3727 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 144:
 -#line 1553 "awkgram.y" /* yacc.c:1646  */
 +  case 158:
- #line 1641 "awkgram.y" /* yacc.c:1646  */
++#line 1644 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3730 "awkgram.c" /* yacc.c:1646  */
 -#line 3554 "awkgram.c" /* yacc.c:1646  */
++#line 3733 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 145:
 -#line 1555 "awkgram.y" /* yacc.c:1646  */
 +  case 159:
- #line 1643 "awkgram.y" /* yacc.c:1646  */
++#line 1646 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3736 "awkgram.c" /* yacc.c:1646  */
 -#line 3560 "awkgram.c" /* yacc.c:1646  */
++#line 3739 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 146:
 -#line 1557 "awkgram.y" /* yacc.c:1646  */
 +  case 160:
- #line 1645 "awkgram.y" /* yacc.c:1646  */
++#line 1648 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = mk_binary((yyvsp[-2]), (yyvsp[0]), (yyvsp[-1])); }
- #line 3742 "awkgram.c" /* yacc.c:1646  */
 -#line 3566 "awkgram.c" /* yacc.c:1646  */
++#line 3745 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 147:
 -#line 1562 "awkgram.y" /* yacc.c:1646  */
 +  case 161:
- #line 1650 "awkgram.y" /* yacc.c:1646  */
++#line 1653 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = list_create((yyvsp[0]));
          }
- #line 3750 "awkgram.c" /* yacc.c:1646  */
 -#line 3574 "awkgram.c" /* yacc.c:1646  */
++#line 3753 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 148:
 -#line 1566 "awkgram.y" /* yacc.c:1646  */
 +  case 162:
- #line 1654 "awkgram.y" /* yacc.c:1646  */
++#line 1657 "awkgram.y" /* yacc.c:1646  */
      {
                if ((yyvsp[0])->opcode == Op_match_rec) {
                        (yyvsp[0])->opcode = Op_nomatch;
@@@ -3782,37 -3606,37 +3785,37 @@@
                        }
                }
           }
- #line 3786 "awkgram.c" /* yacc.c:1646  */
 -#line 3610 "awkgram.c" /* yacc.c:1646  */
++#line 3789 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 149:
 -#line 1598 "awkgram.y" /* yacc.c:1646  */
 +  case 163:
- #line 1686 "awkgram.y" /* yacc.c:1646  */
++#line 1689 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[-1]); }
- #line 3792 "awkgram.c" /* yacc.c:1646  */
 -#line 3616 "awkgram.c" /* yacc.c:1646  */
++#line 3795 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 150:
 -#line 1600 "awkgram.y" /* yacc.c:1646  */
 +  case 164:
- #line 1688 "awkgram.y" /* yacc.c:1646  */
++#line 1691 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = snode((yyvsp[-1]), (yyvsp[-3]));
                if ((yyval) == NULL)
                        YYABORT;
          }
- #line 3802 "awkgram.c" /* yacc.c:1646  */
 -#line 3626 "awkgram.c" /* yacc.c:1646  */
++#line 3805 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 151:
 -#line 1606 "awkgram.y" /* yacc.c:1646  */
 +  case 165:
- #line 1694 "awkgram.y" /* yacc.c:1646  */
++#line 1697 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = snode((yyvsp[-1]), (yyvsp[-3]));
                if ((yyval) == NULL)
                        YYABORT;
          }
- #line 3812 "awkgram.c" /* yacc.c:1646  */
 -#line 3636 "awkgram.c" /* yacc.c:1646  */
++#line 3815 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 152:
 -#line 1612 "awkgram.y" /* yacc.c:1646  */
 +  case 166:
- #line 1700 "awkgram.y" /* yacc.c:1646  */
++#line 1703 "awkgram.y" /* yacc.c:1646  */
      {
                static bool warned = false;
  
@@@ -3825,45 -3649,45 +3828,45 @@@
                if ((yyval) == NULL)
                        YYABORT;
          }
- #line 3829 "awkgram.c" /* yacc.c:1646  */
 -#line 3653 "awkgram.c" /* yacc.c:1646  */
++#line 3832 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 155:
 -#line 1627 "awkgram.y" /* yacc.c:1646  */
 +  case 169:
- #line 1715 "awkgram.y" /* yacc.c:1646  */
++#line 1718 "awkgram.y" /* yacc.c:1646  */
      {
                (yyvsp[-1])->opcode = Op_preincrement;
                (yyval) = mk_assignment((yyvsp[0]), NULL, (yyvsp[-1]));
          }
- #line 3838 "awkgram.c" /* yacc.c:1646  */
 -#line 3662 "awkgram.c" /* yacc.c:1646  */
++#line 3841 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 156:
 -#line 1632 "awkgram.y" /* yacc.c:1646  */
 +  case 170:
- #line 1720 "awkgram.y" /* yacc.c:1646  */
++#line 1723 "awkgram.y" /* yacc.c:1646  */
      {
                (yyvsp[-1])->opcode = Op_predecrement;
                (yyval) = mk_assignment((yyvsp[0]), NULL, (yyvsp[-1]));
          }
- #line 3847 "awkgram.c" /* yacc.c:1646  */
 -#line 3671 "awkgram.c" /* yacc.c:1646  */
++#line 3850 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 157:
 -#line 1637 "awkgram.y" /* yacc.c:1646  */
 +  case 171:
- #line 1725 "awkgram.y" /* yacc.c:1646  */
++#line 1728 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = list_create((yyvsp[0]));
          }
- #line 3855 "awkgram.c" /* yacc.c:1646  */
 -#line 3679 "awkgram.c" /* yacc.c:1646  */
++#line 3858 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 158:
 -#line 1641 "awkgram.y" /* yacc.c:1646  */
 +  case 172:
- #line 1729 "awkgram.y" /* yacc.c:1646  */
++#line 1732 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = list_create((yyvsp[0]));
          }
- #line 3863 "awkgram.c" /* yacc.c:1646  */
 -#line 3687 "awkgram.c" /* yacc.c:1646  */
++#line 3866 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 159:
 -#line 1645 "awkgram.y" /* yacc.c:1646  */
 +  case 173:
- #line 1733 "awkgram.y" /* yacc.c:1646  */
++#line 1736 "awkgram.y" /* yacc.c:1646  */
      {
                if ((yyvsp[0])->lasti->opcode == Op_push_i
                        && ((yyvsp[0])->lasti->memory->flags & (STRCUR|STRING)) 
== 0
@@@ -3878,11 -3702,11 +3881,11 @@@
                        (yyval) = list_append((yyvsp[0]), (yyvsp[-1]));
                }
          }
- #line 3882 "awkgram.c" /* yacc.c:1646  */
 -#line 3706 "awkgram.c" /* yacc.c:1646  */
++#line 3885 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 160:
 -#line 1660 "awkgram.y" /* yacc.c:1646  */
 +  case 174:
- #line 1748 "awkgram.y" /* yacc.c:1646  */
++#line 1751 "awkgram.y" /* yacc.c:1646  */
      {
            /*
             * was: $$ = $2
@@@ -3892,20 -3716,20 +3895,20 @@@
                (yyvsp[-1])->memory = make_number(0.0);
                (yyval) = list_append((yyvsp[0]), (yyvsp[-1]));
          }
- #line 3896 "awkgram.c" /* yacc.c:1646  */
 -#line 3720 "awkgram.c" /* yacc.c:1646  */
++#line 3899 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 161:
 -#line 1673 "awkgram.y" /* yacc.c:1646  */
 +  case 175:
- #line 1761 "awkgram.y" /* yacc.c:1646  */
++#line 1764 "awkgram.y" /* yacc.c:1646  */
      {
                func_use((yyvsp[0])->lasti->func_name, FUNC_USE);
                (yyval) = (yyvsp[0]);
          }
- #line 3905 "awkgram.c" /* yacc.c:1646  */
 -#line 3729 "awkgram.c" /* yacc.c:1646  */
++#line 3908 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 162:
 -#line 1678 "awkgram.y" /* yacc.c:1646  */
 +  case 176:
- #line 1766 "awkgram.y" /* yacc.c:1646  */
++#line 1769 "awkgram.y" /* yacc.c:1646  */
      {
                /* indirect function call */
                INSTRUCTION *f, *t;
@@@ -3939,11 -3763,11 +3942,11 @@@
                (yyval) = list_prepend((yyvsp[0]), t);
                at_seen = false;
          }
- #line 3943 "awkgram.c" /* yacc.c:1646  */
 -#line 3767 "awkgram.c" /* yacc.c:1646  */
++#line 3946 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 163:
 -#line 1715 "awkgram.y" /* yacc.c:1646  */
 +  case 177:
- #line 1803 "awkgram.y" /* yacc.c:1646  */
++#line 1806 "awkgram.y" /* yacc.c:1646  */
      {
                NODE *n;
  
@@@ -3968,49 -3792,49 +3971,49 @@@
                        (yyval) = list_append(t, (yyvsp[-3]));
                }
          }
- #line 3972 "awkgram.c" /* yacc.c:1646  */
 -#line 3796 "awkgram.c" /* yacc.c:1646  */
++#line 3975 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 164:
 -#line 1743 "awkgram.y" /* yacc.c:1646  */
 +  case 178:
- #line 1831 "awkgram.y" /* yacc.c:1646  */
++#line 1834 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 3978 "awkgram.c" /* yacc.c:1646  */
 -#line 3802 "awkgram.c" /* yacc.c:1646  */
++#line 3981 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 165:
 -#line 1745 "awkgram.y" /* yacc.c:1646  */
 +  case 179:
- #line 1833 "awkgram.y" /* yacc.c:1646  */
++#line 1836 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 3984 "awkgram.c" /* yacc.c:1646  */
 -#line 3808 "awkgram.c" /* yacc.c:1646  */
++#line 3987 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 166:
 -#line 1750 "awkgram.y" /* yacc.c:1646  */
 +  case 180:
- #line 1838 "awkgram.y" /* yacc.c:1646  */
++#line 1841 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 3990 "awkgram.c" /* yacc.c:1646  */
 -#line 3814 "awkgram.c" /* yacc.c:1646  */
++#line 3993 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 167:
 -#line 1752 "awkgram.y" /* yacc.c:1646  */
 +  case 181:
- #line 1840 "awkgram.y" /* yacc.c:1646  */
++#line 1843 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[-1]); }
- #line 3996 "awkgram.c" /* yacc.c:1646  */
 -#line 3820 "awkgram.c" /* yacc.c:1646  */
++#line 3999 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 168:
 -#line 1757 "awkgram.y" /* yacc.c:1646  */
 +  case 182:
- #line 1845 "awkgram.y" /* yacc.c:1646  */
++#line 1848 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 4002 "awkgram.c" /* yacc.c:1646  */
 -#line 3826 "awkgram.c" /* yacc.c:1646  */
++#line 4005 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 169:
 -#line 1759 "awkgram.y" /* yacc.c:1646  */
 +  case 183:
- #line 1847 "awkgram.y" /* yacc.c:1646  */
++#line 1850 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = list_merge((yyvsp[-1]), (yyvsp[0]));
          }
- #line 4010 "awkgram.c" /* yacc.c:1646  */
 -#line 3834 "awkgram.c" /* yacc.c:1646  */
++#line 4013 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 170:
 -#line 1766 "awkgram.y" /* yacc.c:1646  */
 +  case 184:
- #line 1854 "awkgram.y" /* yacc.c:1646  */
++#line 1857 "awkgram.y" /* yacc.c:1646  */
      {
                INSTRUCTION *ip = (yyvsp[0])->lasti; 
                int count = ip->sub_count;      /* # of SUBSEP-seperated 
expressions */
@@@ -4024,11 -3848,11 +4027,11 @@@
                sub_counter++;  /* count # of dimensions */
                (yyval) = (yyvsp[0]);
          }
- #line 4028 "awkgram.c" /* yacc.c:1646  */
 -#line 3852 "awkgram.c" /* yacc.c:1646  */
++#line 4031 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 171:
 -#line 1783 "awkgram.y" /* yacc.c:1646  */
 +  case 185:
- #line 1871 "awkgram.y" /* yacc.c:1646  */
++#line 1874 "awkgram.y" /* yacc.c:1646  */
      {
                INSTRUCTION *t = (yyvsp[-1]);
                if ((yyvsp[-1]) == NULL) {
@@@ -4042,31 -3866,31 +4045,31 @@@
                        (yyvsp[0])->sub_count = count_expressions(&t, false);
                (yyval) = list_append(t, (yyvsp[0]));
          }
- #line 4046 "awkgram.c" /* yacc.c:1646  */
 -#line 3870 "awkgram.c" /* yacc.c:1646  */
++#line 4049 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 172:
 -#line 1800 "awkgram.y" /* yacc.c:1646  */
 +  case 186:
- #line 1888 "awkgram.y" /* yacc.c:1646  */
++#line 1891 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); }
- #line 4052 "awkgram.c" /* yacc.c:1646  */
 -#line 3876 "awkgram.c" /* yacc.c:1646  */
++#line 4055 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 173:
 -#line 1802 "awkgram.y" /* yacc.c:1646  */
 +  case 187:
- #line 1890 "awkgram.y" /* yacc.c:1646  */
++#line 1893 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = list_merge((yyvsp[-1]), (yyvsp[0]));
          }
- #line 4060 "awkgram.c" /* yacc.c:1646  */
 -#line 3884 "awkgram.c" /* yacc.c:1646  */
++#line 4063 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 174:
 -#line 1809 "awkgram.y" /* yacc.c:1646  */
 +  case 188:
- #line 1897 "awkgram.y" /* yacc.c:1646  */
++#line 1900 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[-1]); }
- #line 4066 "awkgram.c" /* yacc.c:1646  */
 -#line 3890 "awkgram.c" /* yacc.c:1646  */
++#line 4069 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 175:
 -#line 1814 "awkgram.y" /* yacc.c:1646  */
 +  case 189:
- #line 1902 "awkgram.y" /* yacc.c:1646  */
++#line 1905 "awkgram.y" /* yacc.c:1646  */
      {
                char *var_name = (yyvsp[0])->lextok;
  
@@@ -4074,22 -3898,22 +4077,22 @@@
                (yyvsp[0])->memory = variable((yyvsp[0])->source_line, 
var_name, Node_var_new);
                (yyval) = list_create((yyvsp[0]));
          }
- #line 4078 "awkgram.c" /* yacc.c:1646  */
 -#line 3902 "awkgram.c" /* yacc.c:1646  */
++#line 4081 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 176:
 -#line 1822 "awkgram.y" /* yacc.c:1646  */
 +  case 190:
- #line 1910 "awkgram.y" /* yacc.c:1646  */
++#line 1913 "awkgram.y" /* yacc.c:1646  */
      {
                char *arr = (yyvsp[-1])->lextok;
                (yyvsp[-1])->memory = variable((yyvsp[-1])->source_line, arr, 
Node_var_new);
                (yyvsp[-1])->opcode = Op_push_array;
                (yyval) = list_prepend((yyvsp[0]), (yyvsp[-1]));
          }
- #line 4089 "awkgram.c" /* yacc.c:1646  */
 -#line 3913 "awkgram.c" /* yacc.c:1646  */
++#line 4092 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 177:
 -#line 1832 "awkgram.y" /* yacc.c:1646  */
 +  case 191:
- #line 1920 "awkgram.y" /* yacc.c:1646  */
++#line 1923 "awkgram.y" /* yacc.c:1646  */
      {
                INSTRUCTION *ip = (yyvsp[0])->nexti;
                if (ip->opcode == Op_push
@@@ -4101,73 -3925,73 +4104,73 @@@
                } else
                        (yyval) = (yyvsp[0]);
          }
- #line 4105 "awkgram.c" /* yacc.c:1646  */
 -#line 3929 "awkgram.c" /* yacc.c:1646  */
++#line 4108 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 178:
 -#line 1844 "awkgram.y" /* yacc.c:1646  */
 +  case 192:
- #line 1932 "awkgram.y" /* yacc.c:1646  */
++#line 1935 "awkgram.y" /* yacc.c:1646  */
      {
                (yyval) = list_append((yyvsp[-1]), (yyvsp[-2]));
                if ((yyvsp[0]) != NULL)
                        mk_assignment((yyvsp[-1]), NULL, (yyvsp[0]));
          }
- #line 4115 "awkgram.c" /* yacc.c:1646  */
 -#line 3939 "awkgram.c" /* yacc.c:1646  */
++#line 4118 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 179:
 -#line 1853 "awkgram.y" /* yacc.c:1646  */
 +  case 193:
- #line 1941 "awkgram.y" /* yacc.c:1646  */
++#line 1944 "awkgram.y" /* yacc.c:1646  */
      {
                (yyvsp[0])->opcode = Op_postincrement;
          }
- #line 4123 "awkgram.c" /* yacc.c:1646  */
 -#line 3947 "awkgram.c" /* yacc.c:1646  */
++#line 4126 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 180:
 -#line 1857 "awkgram.y" /* yacc.c:1646  */
 +  case 194:
- #line 1945 "awkgram.y" /* yacc.c:1646  */
++#line 1948 "awkgram.y" /* yacc.c:1646  */
      {
                (yyvsp[0])->opcode = Op_postdecrement;
          }
- #line 4131 "awkgram.c" /* yacc.c:1646  */
 -#line 3955 "awkgram.c" /* yacc.c:1646  */
++#line 4134 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 181:
 -#line 1860 "awkgram.y" /* yacc.c:1646  */
 +  case 195:
- #line 1948 "awkgram.y" /* yacc.c:1646  */
++#line 1951 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = NULL; }
- #line 4137 "awkgram.c" /* yacc.c:1646  */
 -#line 3961 "awkgram.c" /* yacc.c:1646  */
++#line 4140 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 183:
 -#line 1868 "awkgram.y" /* yacc.c:1646  */
 +  case 197:
- #line 1956 "awkgram.y" /* yacc.c:1646  */
++#line 1959 "awkgram.y" /* yacc.c:1646  */
      { yyerrok; }
- #line 4143 "awkgram.c" /* yacc.c:1646  */
 -#line 3967 "awkgram.c" /* yacc.c:1646  */
++#line 4146 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 184:
 -#line 1872 "awkgram.y" /* yacc.c:1646  */
 +  case 198:
- #line 1960 "awkgram.y" /* yacc.c:1646  */
++#line 1963 "awkgram.y" /* yacc.c:1646  */
      { yyerrok; }
- #line 4149 "awkgram.c" /* yacc.c:1646  */
 -#line 3973 "awkgram.c" /* yacc.c:1646  */
++#line 4152 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 187:
 -#line 1881 "awkgram.y" /* yacc.c:1646  */
 +  case 201:
- #line 1969 "awkgram.y" /* yacc.c:1646  */
++#line 1972 "awkgram.y" /* yacc.c:1646  */
      { yyerrok; }
- #line 4155 "awkgram.c" /* yacc.c:1646  */
 -#line 3979 "awkgram.c" /* yacc.c:1646  */
++#line 4158 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 188:
 -#line 1885 "awkgram.y" /* yacc.c:1646  */
 +  case 202:
- #line 1973 "awkgram.y" /* yacc.c:1646  */
++#line 1976 "awkgram.y" /* yacc.c:1646  */
      { (yyval) = (yyvsp[0]); yyerrok; }
- #line 4161 "awkgram.c" /* yacc.c:1646  */
 -#line 3985 "awkgram.c" /* yacc.c:1646  */
++#line 4164 "awkgram.c" /* yacc.c:1646  */
      break;
  
 -  case 189:
 -#line 1889 "awkgram.y" /* yacc.c:1646  */
 +  case 203:
- #line 1977 "awkgram.y" /* yacc.c:1646  */
++#line 1980 "awkgram.y" /* yacc.c:1646  */
      { yyerrok; }
- #line 4167 "awkgram.c" /* yacc.c:1646  */
 -#line 3991 "awkgram.c" /* yacc.c:1646  */
++#line 4170 "awkgram.c" /* yacc.c:1646  */
      break;
  
  
- #line 4171 "awkgram.c" /* yacc.c:1646  */
 -#line 3995 "awkgram.c" /* yacc.c:1646  */
++#line 4174 "awkgram.c" /* yacc.c:1646  */
        default: break;
      }
    /* User semantic actions sometimes alter yychar, and that requires
@@@ -4395,7 -4219,7 +4398,7 @@@ yyreturn
  #endif
    return yyresult;
  }
- #line 1979 "awkgram.y" /* yacc.c:1906  */
 -#line 1891 "awkgram.y" /* yacc.c:1906  */
++#line 1982 "awkgram.y" /* yacc.c:1906  */
  
  
  struct token {

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                     |   22 ++
 Checklist                     |   11 +-
 Makefile.am                   |   10 +-
 Makefile.in                   |   10 +-
 NEWS                          |    6 +-
 README_d/ChangeLog            |    4 +
 awkgram.c                     |  447 +++++++++++++-------------
 awkgram.y                     |   27 +-
 awklib/ChangeLog              |    4 +
 doc/ChangeLog                 |    4 +
 extension/ChangeLog           |    4 +
 extension/build-aux/ChangeLog |    4 +
 extension/m4/ChangeLog        |    4 +
 helpers/ChangeLog             |    9 +
 helpers/genbin.awk            |    5 +
 helpers/gendec.c              |   18 +
 m4/ChangeLog                  |    4 +
 missing_d/ChangeLog           |    4 +
 old-extension/ChangeLog       |    2 +-
 pc/ChangeLog                  |    4 +
 po/ChangeLog                  |    4 +
 po/ca.gmo                     |  Bin 82049 -> 82049 bytes
 po/ca.po                      |  493 +++++++++++++++--------------
 po/da.gmo                     |  Bin 41373 -> 45601 bytes
 po/da.po                      |  532 ++++++++++++++----------------
 po/de.gmo                     |  Bin 83971 -> 86359 bytes
 po/de.po                      |  716 +++++++++++++++++++++++++++--------------
 po/es.gmo                     |  Bin 43722 -> 43722 bytes
 po/es.po                      |  493 +++++++++++++++--------------
 po/fi.gmo                     |  Bin 83703 -> 85865 bytes
 po/fi.po                      |  617 ++++++++++++++++++++++-------------
 po/fr.gmo                     |  Bin 84606 -> 86892 bytes
 po/fr.po                      |  624 +++++++++++++++++++++++-------------
 po/gawk.pot                   |  230 +++++++-------
 po/it.gmo                     |  Bin 81863 -> 82296 bytes
 po/it.po                      |  494 +++++++++++++++--------------
 po/ja.gmo                     |  Bin 51602 -> 51602 bytes
 po/ja.po                      |  492 +++++++++++++++--------------
 po/ms.gmo                     |  Bin 1183 -> 1183 bytes
 po/ms.po                      |  491 +++++++++++++++--------------
 po/nl.gmo                     |  Bin 80070 -> 82198 bytes
 po/nl.po                      |  555 ++++++++++++++++++++------------
 po/pl.gmo                     |  Bin 70252 -> 70252 bytes
 po/pl.po                      |  492 +++++++++++++++--------------
 po/sv.gmo                     |  Bin 79966 -> 82224 bytes
 po/sv.po                      |  493 +++++++++++++++++-----------
 po/vi.gmo                     |  Bin 91989 -> 94364 bytes
 po/vi.po                      |  581 +++++++++++++++++++++------------
 posix/ChangeLog               |    4 +
 test/ChangeLog                |    4 +
 vms/ChangeLog                 |    6 +-
 vms/vax/ChangeLog             |    4 +
 52 files changed, 4554 insertions(+), 3374 deletions(-)
 create mode 100644 helpers/genbin.awk
 create mode 100644 helpers/gendec.c


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]