gawk-diffs
[Top][All Lists]
Advanced

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

[gawk-diffs] [SCM] gawk branch, master, updated. 491e95a1d22995973e9d627


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, master, updated. 491e95a1d22995973e9d62719d321a623ed22e07
Date: Tue, 26 Feb 2013 19:39:48 +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, master has been updated
       via  491e95a1d22995973e9d62719d321a623ed22e07 (commit)
       via  2b02c5c64a93608c347ffaa312d88d52f93888da (commit)
      from  095574f6fe71432416f5be6756ef882ceb148942 (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=491e95a1d22995973e9d62719d321a623ed22e07

commit 491e95a1d22995973e9d62719d321a623ed22e07
Merge: 095574f 2b02c5c
Author: Arnold D. Robbins <address@hidden>
Date:   Tue Feb 26 21:39:31 2013 +0200

    Merge branch 'gawk-4.0-stable'

diff --cc ChangeLog
index 3db54e4,2ebb6eb..65b5757
--- a/ChangeLog
+++ b/ChangeLog
@@@ -1,9 -1,8 +1,14 @@@
+ 2013-02-26         Arnold D. Robbins     <address@hidden>
+ 
+       * parse.y (expression_list): In case of error return the list
+       instead of NULL so that snode gets something it can count.
+ 
 +2013-02-12         Arnold D. Robbins     <address@hidden>
 +
 +      * bisonfix.awk: Comment out code for fixing contined #if
 +      statements. It is likely not needed anymore. Leave it there in
 +      case I'm wrong.
 +
  2013-02-06         Arnold D. Robbins     <address@hidden>
  
        * builtin.c (printf_common): Move nargs > 0 check into assert.
diff --cc awkgram.c
index d15e5ac,3e27bbb..31f80bc
--- a/awkgram.c
+++ b/awkgram.c
@@@ -440,7 -457,7 +440,8 @@@ typedef short int yytype_int16
  #ifndef lint
  # define YYID(N) (N)
  #else
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static int
  YYID (int yyi)
  #else
@@@ -524,7 -541,7 +525,9 @@@ void free (void *); /* INFRINGES ON USE
  #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
  
  
--#if (! defined yyoverflow      && (! defined __cplusplus       || (defined 
YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
++#if (! defined yyoverflow \
++     && (! defined __cplusplus \
++       || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
  
  /* A type that is properly aligned for any stack member.  */
  union yyalloc
@@@ -732,25 -748,25 +735,25 @@@ static const yytype_int16 yyrhs[] 
  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
  static const yytype_uint16 yyrline[] =
  {
 -       0,   219,   219,   221,   226,   227,   231,   243,   247,   258,
 -     266,   274,   282,   284,   290,   291,   293,   319,   330,   341,
 -     347,   356,   366,   368,   370,   381,   386,   387,   392,   391,
 -     421,   420,   453,   455,   460,   461,   474,   479,   480,   484,
 -     486,   488,   495,   585,   627,   669,   782,   789,   796,   806,
 -     815,   824,   833,   844,   860,   859,   871,   883,   883,   979,
 -     979,  1005,  1028,  1034,  1035,  1041,  1042,  1049,  1054,  1066,
 -    1080,  1082,  1088,  1093,  1095,  1103,  1105,  1114,  1115,  1123,
 -    1128,  1128,  1139,  1143,  1151,  1152,  1155,  1157,  1162,  1163,
 -    1170,  1172,  1176,  1182,  1189,  1191,  1193,  1200,  1201,  1207,
 -    1208,  1213,  1215,  1220,  1222,  1230,  1235,  1244,  1251,  1253,
 -    1255,  1271,  1281,  1288,  1290,  1295,  1297,  1299,  1307,  1309,
 -    1314,  1316,  1321,  1323,  1325,  1378,  1380,  1382,  1384,  1386,
 -    1388,  1390,  1392,  1415,  1420,  1425,  1450,  1456,  1458,  1460,
 -    1462,  1464,  1466,  1471,  1475,  1506,  1508,  1514,  1520,  1533,
 -    1534,  1535,  1540,  1545,  1549,  1553,  1565,  1578,  1583,  1619,
 -    1637,  1638,  1644,  1645,  1650,  1652,  1659,  1676,  1693,  1695,
 -    1702,  1707,  1715,  1729,  1741,  1750,  1754,  1758,  1762,  1766,
 -    1770,  1773,  1775,  1779,  1783,  1787
 +       0,   200,   200,   202,   207,   208,   214,   226,   230,   241,
 +     247,   252,   260,   268,   270,   275,   283,   285,   291,   292,
 +     294,   320,   331,   342,   348,   357,   367,   369,   371,   377,
 +     382,   383,   387,   406,   405,   439,   441,   446,   447,   460,
 +     465,   466,   470,   472,   474,   481,   571,   613,   655,   768,
 +     775,   782,   792,   801,   810,   819,   830,   846,   845,   869,
 +     881,   881,   979,   979,  1012,  1042,  1048,  1049,  1055,  1056,
 +    1063,  1068,  1080,  1094,  1096,  1104,  1109,  1111,  1119,  1121,
 +    1130,  1131,  1139,  1144,  1144,  1155,  1159,  1167,  1168,  1171,
 +    1173,  1178,  1179,  1188,  1189,  1194,  1199,  1205,  1207,  1209,
-     1216,  1217,  1223,  1224,  1229,  1231,  1236,  1238,  1240,  1242,
-     1248,  1255,  1257,  1259,  1275,  1285,  1292,  1294,  1299,  1301,
-     1303,  1311,  1313,  1318,  1320,  1325,  1327,  1329,  1379,  1381,
-     1383,  1385,  1387,  1389,  1391,  1393,  1416,  1421,  1426,  1451,
-     1457,  1459,  1461,  1463,  1465,  1467,  1472,  1476,  1508,  1510,
-     1516,  1522,  1535,  1536,  1537,  1542,  1547,  1551,  1555,  1570,
-     1583,  1588,  1624,  1642,  1643,  1649,  1650,  1655,  1657,  1664,
-     1681,  1698,  1700,  1707,  1712,  1720,  1730,  1742,  1751,  1755,
-     1759,  1763,  1767,  1771,  1774,  1776,  1780,  1784,  1788
++    1216,  1217,  1223,  1224,  1229,  1231,  1236,  1238,  1246,  1251,
++    1260,  1267,  1269,  1271,  1287,  1297,  1304,  1306,  1311,  1313,
++    1315,  1323,  1325,  1330,  1332,  1337,  1339,  1341,  1391,  1393,
++    1395,  1397,  1399,  1401,  1403,  1405,  1428,  1433,  1438,  1463,
++    1469,  1471,  1473,  1475,  1477,  1479,  1484,  1488,  1520,  1522,
++    1528,  1534,  1547,  1548,  1549,  1554,  1559,  1563,  1567,  1582,
++    1595,  1600,  1636,  1654,  1655,  1661,  1662,  1667,  1669,  1676,
++    1693,  1710,  1712,  1719,  1724,  1732,  1742,  1754,  1763,  1767,
++    1771,  1775,  1779,  1783,  1786,  1788,  1792,  1796,  1800
  };
  #endif
  
@@@ -1340,7 -1353,7 +1343,8 @@@ do {                                            
                          
  `--------------------------------*/
  
  /*ARGSUSED*/
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const 
yyvaluep)
  #else
@@@ -1373,7 -1386,7 +1377,8 @@@ yy_symbol_value_print (yyoutput, yytype
  | Print this symbol on YYOUTPUT.  |
  `--------------------------------*/
  
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
  #else
@@@ -1398,7 -1411,7 +1403,8 @@@ yy_symbol_print (yyoutput, yytype, yyva
  | TOP (included).                                                   |
  `------------------------------------------------------------------*/
  
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
  #else
@@@ -1428,7 -1441,7 +1434,8 @@@ do {                                            
                
  | Report that the YYRULE is going to be reduced.  |
  `------------------------------------------------*/
  
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
  #else
@@@ -1495,7 -1508,7 +1502,8 @@@ int yydebug
  #   define yystrlen strlen
  #  else
  /* Return the length of YYSTR.  */
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static YYSIZE_T
  yystrlen (const char *yystr)
  #else
@@@ -1518,7 -1531,7 +1526,8 @@@ yystrlen (yystr
  #  else
  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
     YYDEST.  */
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static char *
  yystpcpy (char *yydest, const char *yysrc)
  #else
@@@ -1732,7 -1745,7 +1741,8 @@@ yysyntax_error (YYSIZE_T *yymsg_alloc, 
  `-----------------------------------------------*/
  
  /*ARGSUSED*/
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
  #else
@@@ -1784,7 -1797,7 +1794,8 @@@ int yynerrs
  `----------*/
  
  #ifdef YYPARSE_PARAM
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  int
  yyparse (void *YYPARSE_PARAM)
  #else
@@@ -1793,7 -1806,7 +1804,8 @@@ yyparse (YYPARSE_PARAM
      void *YYPARSE_PARAM;
  #endif
  #else /* ! YYPARSE_PARAM */
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  int
  yyparse (void)
  #else
@@@ -3300,46 -3280,37 +3312,58 @@@ regular_print
  
    case 104:
  /* Line 1792 of yacc.c  */
 -#line 1223 "awkgram.y"
 -    {
 +#line 1230 "awkgram.y"
 +    { (yyval) = mk_expression_list(NULL, (yyvsp[(1) - (1)])); }
 +    break;
 +
 +  case 105:
 +/* Line 1792 of yacc.c  */
 +#line 1232 "awkgram.y"
 +    {
 +              (yyval) = mk_expression_list((yyvsp[(1) - (3)]), (yyvsp[(3) - 
(3)]));
 +              yyerrok;
 +        }
 +    break;
 +
 +  case 106:
 +/* Line 1792 of yacc.c  */
 +#line 1237 "awkgram.y"
 +    { (yyval) = NULL; }
 +    break;
 +
 +  case 107:
 +/* Line 1792 of yacc.c  */
 +#line 1239 "awkgram.y"
-     { (yyval) = NULL; }
++    {
+               /*
+                * Returning the expression list instead of NULL lets
+                * snode get a list of arguments that it can count.
+                */
+               (yyval) = (yyvsp[(1) - (2)]);
+         }
      break;
  
 -  case 105:
 +  case 108:
  /* Line 1792 of yacc.c  */
- #line 1241 "awkgram.y"
-     { (yyval) = NULL; }
 -#line 1231 "awkgram.y"
++#line 1247 "awkgram.y"
+     {
+               /* Ditto */
+               (yyval) = mk_expression_list((yyvsp[(1) - (3)]), (yyvsp[(3) - 
(3)]));
+         }
      break;
  
 -  case 106:
 +  case 109:
  /* Line 1792 of yacc.c  */
- #line 1243 "awkgram.y"
-     { (yyval) = NULL; }
 -#line 1236 "awkgram.y"
++#line 1252 "awkgram.y"
+     {
+               /* Ditto */
+               (yyval) = (yyvsp[(1) - (3)]);
+         }
      break;
  
 -  case 107:
 +  case 110:
  /* Line 1792 of yacc.c  */
- #line 1249 "awkgram.y"
 -#line 1245 "awkgram.y"
++#line 1261 "awkgram.y"
      {
                if (do_lint && (yyvsp[(3) - (3)])->lasti->opcode == 
Op_match_rec)
                        lintwarn_ln((yyvsp[(2) - (3)])->source_line,
@@@ -3348,21 -3319,21 +3372,21 @@@
          }
      break;
  
 -  case 108:
 +  case 111:
  /* Line 1792 of yacc.c  */
- #line 1256 "awkgram.y"
 -#line 1252 "awkgram.y"
++#line 1268 "awkgram.y"
      { (yyval) = mk_boolean((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 109:
 +  case 112:
  /* Line 1792 of yacc.c  */
- #line 1258 "awkgram.y"
 -#line 1254 "awkgram.y"
++#line 1270 "awkgram.y"
      { (yyval) = mk_boolean((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 110:
 +  case 113:
  /* Line 1792 of yacc.c  */
- #line 1260 "awkgram.y"
 -#line 1256 "awkgram.y"
++#line 1272 "awkgram.y"
      {
                if ((yyvsp[(1) - (3)])->lasti->opcode == Op_match_rec)
                        warning_ln((yyvsp[(2) - (3)])->source_line,
@@@ -3380,12 -3351,12 +3404,12 @@@
          }
      break;
  
 -  case 111:
 +  case 114:
  /* Line 1792 of yacc.c  */
- #line 1276 "awkgram.y"
 -#line 1272 "awkgram.y"
++#line 1288 "awkgram.y"
      {
                if (do_lint_old)
 -                warning_ln((yyvsp[(2) - (3)])->source_line,
 +                      warning_ln((yyvsp[(2) - (3)])->source_line,
                                _("old awk does not support the keyword `in' 
except after `for'"));
                (yyvsp[(3) - (3)])->nexti->opcode = Op_push_array;
                (yyvsp[(2) - (3)])->opcode = Op_in_array;
@@@ -3394,9 -3365,9 +3418,9 @@@
          }
      break;
  
 -  case 112:
 +  case 115:
  /* Line 1792 of yacc.c  */
- #line 1286 "awkgram.y"
 -#line 1282 "awkgram.y"
++#line 1298 "awkgram.y"
      {
                if (do_lint && (yyvsp[(3) - (3)])->lasti->opcode == 
Op_match_rec)
                        lintwarn_ln((yyvsp[(2) - (3)])->source_line,
@@@ -3405,81 -3376,81 +3429,81 @@@
          }
      break;
  
 -  case 113:
 +  case 116:
  /* Line 1792 of yacc.c  */
- #line 1293 "awkgram.y"
 -#line 1289 "awkgram.y"
++#line 1305 "awkgram.y"
      { (yyval) = mk_condition((yyvsp[(1) - (5)]), (yyvsp[(2) - (5)]), 
(yyvsp[(3) - (5)]), (yyvsp[(4) - (5)]), (yyvsp[(5) - (5)])); }
      break;
  
 -  case 114:
 +  case 117:
  /* Line 1792 of yacc.c  */
- #line 1295 "awkgram.y"
 -#line 1291 "awkgram.y"
++#line 1307 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 115:
 +  case 118:
  /* Line 1792 of yacc.c  */
- #line 1300 "awkgram.y"
 -#line 1296 "awkgram.y"
++#line 1312 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 116:
 +  case 119:
  /* Line 1792 of yacc.c  */
- #line 1302 "awkgram.y"
 -#line 1298 "awkgram.y"
++#line 1314 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 117:
 +  case 120:
  /* Line 1792 of yacc.c  */
- #line 1304 "awkgram.y"
 -#line 1300 "awkgram.y"
++#line 1316 "awkgram.y"
      { 
                (yyvsp[(2) - (2)])->opcode = Op_assign_quotient;
                (yyval) = (yyvsp[(2) - (2)]);
          }
      break;
  
 -  case 118:
 +  case 121:
  /* Line 1792 of yacc.c  */
- #line 1312 "awkgram.y"
 -#line 1308 "awkgram.y"
++#line 1324 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 119:
 +  case 122:
  /* Line 1792 of yacc.c  */
- #line 1314 "awkgram.y"
 -#line 1310 "awkgram.y"
++#line 1326 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 120:
 +  case 123:
  /* Line 1792 of yacc.c  */
- #line 1319 "awkgram.y"
 -#line 1315 "awkgram.y"
++#line 1331 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 121:
 +  case 124:
  /* Line 1792 of yacc.c  */
- #line 1321 "awkgram.y"
 -#line 1317 "awkgram.y"
++#line 1333 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 122:
 +  case 125:
  /* Line 1792 of yacc.c  */
- #line 1326 "awkgram.y"
 -#line 1322 "awkgram.y"
++#line 1338 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 123:
 +  case 126:
  /* Line 1792 of yacc.c  */
- #line 1328 "awkgram.y"
 -#line 1324 "awkgram.y"
++#line 1340 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 124:
 +  case 127:
  /* Line 1792 of yacc.c  */
- #line 1330 "awkgram.y"
 -#line 1326 "awkgram.y"
++#line 1342 "awkgram.y"
      {
                int count = 2;
 -              int is_simple_var = FALSE;
 +              bool is_simple_var = false;
  
                if ((yyvsp[(1) - (2)])->lasti->opcode == Op_concat) {
                        /* multiple (> 2) adjacent strings optimization */
@@@ -3525,45 -3499,45 +3549,45 @@@
          }
      break;
  
 -  case 126:
 +  case 129:
  /* Line 1792 of yacc.c  */
- #line 1382 "awkgram.y"
 -#line 1381 "awkgram.y"
++#line 1394 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 127:
 +  case 130:
  /* Line 1792 of yacc.c  */
- #line 1384 "awkgram.y"
 -#line 1383 "awkgram.y"
++#line 1396 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 128:
 +  case 131:
  /* Line 1792 of yacc.c  */
- #line 1386 "awkgram.y"
 -#line 1385 "awkgram.y"
++#line 1398 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 129:
 +  case 132:
  /* Line 1792 of yacc.c  */
- #line 1388 "awkgram.y"
 -#line 1387 "awkgram.y"
++#line 1400 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 130:
 +  case 133:
  /* Line 1792 of yacc.c  */
- #line 1390 "awkgram.y"
 -#line 1389 "awkgram.y"
++#line 1402 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 131:
 +  case 134:
  /* Line 1792 of yacc.c  */
- #line 1392 "awkgram.y"
 -#line 1391 "awkgram.y"
++#line 1404 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 132:
 +  case 135:
  /* Line 1792 of yacc.c  */
- #line 1394 "awkgram.y"
 -#line 1393 "awkgram.y"
++#line 1406 "awkgram.y"
      {
                /*
                 * In BEGINFILE/ENDFILE, allow `getline var < file'
@@@ -3588,27 -3562,27 +3612,27 @@@
          }
      break;
  
 -  case 133:
 +  case 136:
  /* Line 1792 of yacc.c  */
- #line 1417 "awkgram.y"
 -#line 1416 "awkgram.y"
++#line 1429 "awkgram.y"
      {
                (yyvsp[(2) - (2)])->opcode = Op_postincrement;
                (yyval) = mk_assignment((yyvsp[(1) - (2)]), NULL, (yyvsp[(2) - 
(2)]));
          }
      break;
  
 -  case 134:
 +  case 137:
  /* Line 1792 of yacc.c  */
- #line 1422 "awkgram.y"
 -#line 1421 "awkgram.y"
++#line 1434 "awkgram.y"
      {
                (yyvsp[(2) - (2)])->opcode = Op_postdecrement;
                (yyval) = mk_assignment((yyvsp[(1) - (2)]), NULL, (yyvsp[(2) - 
(2)]));
          }
      break;
  
 -  case 135:
 +  case 138:
  /* Line 1792 of yacc.c  */
- #line 1427 "awkgram.y"
 -#line 1426 "awkgram.y"
++#line 1439 "awkgram.y"
      {
                if (do_lint_old) {
                    warning_ln((yyvsp[(4) - (5)])->source_line,
@@@ -3630,62 -3604,62 +3654,62 @@@
          }
      break;
  
 -  case 136:
 +  case 139:
  /* Line 1792 of yacc.c  */
- #line 1452 "awkgram.y"
 -#line 1451 "awkgram.y"
++#line 1464 "awkgram.y"
      {
                  (yyval) = mk_getline((yyvsp[(3) - (4)]), (yyvsp[(4) - (4)]), 
(yyvsp[(1) - (4)]), (yyvsp[(2) - (4)])->redir_type);
                  bcfree((yyvsp[(2) - (4)]));
                }
      break;
  
 -  case 137:
 +  case 140:
  /* Line 1792 of yacc.c  */
- #line 1458 "awkgram.y"
 -#line 1457 "awkgram.y"
++#line 1470 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 138:
 +  case 141:
  /* Line 1792 of yacc.c  */
- #line 1460 "awkgram.y"
 -#line 1459 "awkgram.y"
++#line 1472 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 139:
 +  case 142:
  /* Line 1792 of yacc.c  */
- #line 1462 "awkgram.y"
 -#line 1461 "awkgram.y"
++#line 1474 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 140:
 +  case 143:
  /* Line 1792 of yacc.c  */
- #line 1464 "awkgram.y"
 -#line 1463 "awkgram.y"
++#line 1476 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 141:
 +  case 144:
  /* Line 1792 of yacc.c  */
- #line 1466 "awkgram.y"
 -#line 1465 "awkgram.y"
++#line 1478 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 142:
 +  case 145:
  /* Line 1792 of yacc.c  */
- #line 1468 "awkgram.y"
 -#line 1467 "awkgram.y"
++#line 1480 "awkgram.y"
      { (yyval) = mk_binary((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]), (yyvsp[(2) 
- (3)])); }
      break;
  
 -  case 143:
 +  case 146:
  /* Line 1792 of yacc.c  */
- #line 1473 "awkgram.y"
 -#line 1472 "awkgram.y"
++#line 1485 "awkgram.y"
      {
                (yyval) = list_create((yyvsp[(1) - (1)]));
          }
      break;
  
 -  case 144:
 +  case 147:
  /* Line 1792 of yacc.c  */
- #line 1477 "awkgram.y"
 -#line 1476 "awkgram.y"
++#line 1489 "awkgram.y"
      {
                if ((yyvsp[(2) - (2)])->opcode == Op_match_rec) {
                        (yyvsp[(2) - (2)])->opcode = Op_nomatch;
@@@ -3719,15 -3692,15 +3743,15 @@@
           }
      break;
  
 -  case 145:
 +  case 148:
  /* Line 1792 of yacc.c  */
- #line 1509 "awkgram.y"
 -#line 1507 "awkgram.y"
++#line 1521 "awkgram.y"
      { (yyval) = (yyvsp[(2) - (3)]); }
      break;
  
 -  case 146:
 +  case 149:
  /* Line 1792 of yacc.c  */
- #line 1511 "awkgram.y"
 -#line 1509 "awkgram.y"
++#line 1523 "awkgram.y"
      {
                (yyval) = snode((yyvsp[(3) - (4)]), (yyvsp[(1) - (4)]));
                if ((yyval) == NULL)
@@@ -3735,9 -3708,9 +3759,9 @@@
          }
      break;
  
 -  case 147:
 +  case 150:
  /* Line 1792 of yacc.c  */
- #line 1517 "awkgram.y"
 -#line 1515 "awkgram.y"
++#line 1529 "awkgram.y"
      {
                (yyval) = snode((yyvsp[(3) - (4)]), (yyvsp[(1) - (4)]));
                if ((yyval) == NULL)
@@@ -3745,14 -3718,14 +3769,14 @@@
          }
      break;
  
 -  case 148:
 +  case 151:
  /* Line 1792 of yacc.c  */
- #line 1523 "awkgram.y"
 -#line 1521 "awkgram.y"
++#line 1535 "awkgram.y"
      {
 -              static short warned1 = FALSE;
 +              static bool warned = false;
  
 -              if (do_lint && ! warned1) {
 -                      warned1 = TRUE;
 +              if (do_lint && ! warned) {
 +                      warned = true;
                        lintwarn_ln((yyvsp[(1) - (1)])->source_line,
                                _("call of `length' without parentheses is not 
portable"));
                }
@@@ -3762,50 -3735,47 +3786,50 @@@
          }
      break;
  
 -  case 151:
 +  case 154:
  /* Line 1792 of yacc.c  */
- #line 1538 "awkgram.y"
 -#line 1536 "awkgram.y"
++#line 1550 "awkgram.y"
      {
                (yyvsp[(1) - (2)])->opcode = Op_preincrement;
                (yyval) = mk_assignment((yyvsp[(2) - (2)]), NULL, (yyvsp[(1) - 
(2)]));
          }
      break;
  
 -  case 152:
 +  case 155:
  /* Line 1792 of yacc.c  */
- #line 1543 "awkgram.y"
 -#line 1541 "awkgram.y"
++#line 1555 "awkgram.y"
      {
                (yyvsp[(1) - (2)])->opcode = Op_predecrement;
                (yyval) = mk_assignment((yyvsp[(2) - (2)]), NULL, (yyvsp[(1) - 
(2)]));
          }
      break;
  
 -  case 153:
 +  case 156:
  /* Line 1792 of yacc.c  */
- #line 1548 "awkgram.y"
 -#line 1546 "awkgram.y"
++#line 1560 "awkgram.y"
      {
                (yyval) = list_create((yyvsp[(1) - (1)]));
          }
      break;
  
 -  case 154:
 +  case 157:
  /* Line 1792 of yacc.c  */
- #line 1552 "awkgram.y"
 -#line 1550 "awkgram.y"
++#line 1564 "awkgram.y"
      {
                (yyval) = list_create((yyvsp[(1) - (1)]));
          }
      break;
  
 -  case 155:
 +  case 158:
  /* Line 1792 of yacc.c  */
- #line 1556 "awkgram.y"
 -#line 1554 "awkgram.y"
++#line 1568 "awkgram.y"
      {
                if ((yyvsp[(2) - (2)])->lasti->opcode == Op_push_i
 -                              && ((yyvsp[(2) - (2)])->lasti->memory->flags & 
(STRCUR|STRING)) == 0) {
 -                      (yyvsp[(2) - (2)])->lasti->memory->numbr = 
-(force_number((yyvsp[(2) - (2)])->lasti->memory));
 +                      && ((yyvsp[(2) - (2)])->lasti->memory->flags & 
(STRCUR|STRING)) == 0
 +              ) {
 +                      NODE *n = (yyvsp[(2) - (2)])->lasti->memory;
 +                      (void) force_number(n);
 +                      negate_num(n);                  
                        (yyval) = (yyvsp[(2) - (2)]);
                        bcfree((yyvsp[(1) - (2)]));
                } else {
@@@ -3815,9 -3785,9 +3839,9 @@@
          }
      break;
  
 -  case 156:
 +  case 159:
  /* Line 1792 of yacc.c  */
- #line 1571 "awkgram.y"
 -#line 1566 "awkgram.y"
++#line 1583 "awkgram.y"
      {
            /*
             * was: $$ = $2
@@@ -3829,18 -3799,18 +3853,18 @@@
          }
      break;
  
 -  case 157:
 +  case 160:
  /* Line 1792 of yacc.c  */
- #line 1584 "awkgram.y"
 -#line 1579 "awkgram.y"
++#line 1596 "awkgram.y"
      {
                func_use((yyvsp[(1) - (1)])->lasti->func_name, FUNC_USE);
                (yyval) = (yyvsp[(1) - (1)]);
          }
      break;
  
 -  case 158:
 +  case 161:
  /* Line 1792 of yacc.c  */
- #line 1589 "awkgram.y"
 -#line 1584 "awkgram.y"
++#line 1601 "awkgram.y"
      {
                /* indirect function call */
                INSTRUCTION *f, *t;
@@@ -3875,9 -3845,9 +3899,9 @@@
          }
      break;
  
 -  case 159:
 +  case 162:
  /* Line 1792 of yacc.c  */
- #line 1625 "awkgram.y"
 -#line 1620 "awkgram.y"
++#line 1637 "awkgram.y"
      {
                param_sanity((yyvsp[(3) - (4)]));
                (yyvsp[(1) - (4)])->opcode = Op_func_call;
@@@ -3893,47 -3863,47 +3917,47 @@@
          }
      break;
  
 -  case 160:
 +  case 163:
  /* Line 1792 of yacc.c  */
- #line 1642 "awkgram.y"
 -#line 1637 "awkgram.y"
++#line 1654 "awkgram.y"
      { (yyval) = NULL; }
      break;
  
 -  case 161:
 +  case 164:
  /* Line 1792 of yacc.c  */
- #line 1644 "awkgram.y"
 -#line 1639 "awkgram.y"
++#line 1656 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 162:
 +  case 165:
  /* Line 1792 of yacc.c  */
- #line 1649 "awkgram.y"
 -#line 1644 "awkgram.y"
++#line 1661 "awkgram.y"
      { (yyval) = NULL; }
      break;
  
 -  case 163:
 +  case 166:
  /* Line 1792 of yacc.c  */
- #line 1651 "awkgram.y"
 -#line 1646 "awkgram.y"
++#line 1663 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (2)]); }
      break;
  
 -  case 164:
 +  case 167:
  /* Line 1792 of yacc.c  */
- #line 1656 "awkgram.y"
 -#line 1651 "awkgram.y"
++#line 1668 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 165:
 +  case 168:
  /* Line 1792 of yacc.c  */
- #line 1658 "awkgram.y"
 -#line 1653 "awkgram.y"
++#line 1670 "awkgram.y"
      {
                (yyval) = list_merge((yyvsp[(1) - (2)]), (yyvsp[(2) - (2)]));
          }
      break;
  
 -  case 166:
 +  case 169:
  /* Line 1792 of yacc.c  */
- #line 1665 "awkgram.y"
 -#line 1660 "awkgram.y"
++#line 1677 "awkgram.y"
      {
                INSTRUCTION *ip = (yyvsp[(1) - (1)])->lasti; 
                int count = ip->sub_count;      /* # of SUBSEP-seperated 
expressions */
@@@ -3949,9 -3919,9 +3973,9 @@@
          }
      break;
  
 -  case 167:
 +  case 170:
  /* Line 1792 of yacc.c  */
- #line 1682 "awkgram.y"
 -#line 1677 "awkgram.y"
++#line 1694 "awkgram.y"
      {
                INSTRUCTION *t = (yyvsp[(2) - (3)]);
                if ((yyvsp[(2) - (3)]) == NULL) {
@@@ -3967,29 -3937,29 +3991,29 @@@
          }
      break;
  
 -  case 168:
 +  case 171:
  /* Line 1792 of yacc.c  */
- #line 1699 "awkgram.y"
 -#line 1694 "awkgram.y"
++#line 1711 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); }
      break;
  
 -  case 169:
 +  case 172:
  /* Line 1792 of yacc.c  */
- #line 1701 "awkgram.y"
 -#line 1696 "awkgram.y"
++#line 1713 "awkgram.y"
      {
                (yyval) = list_merge((yyvsp[(1) - (2)]), (yyvsp[(2) - (2)]));
          }
      break;
  
 -  case 170:
 +  case 173:
  /* Line 1792 of yacc.c  */
- #line 1708 "awkgram.y"
 -#line 1703 "awkgram.y"
++#line 1720 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (2)]); }
      break;
  
 -  case 171:
 +  case 174:
  /* Line 1792 of yacc.c  */
- #line 1713 "awkgram.y"
 -#line 1708 "awkgram.y"
++#line 1725 "awkgram.y"
      {
                char *var_name = (yyvsp[(1) - (1)])->lextok;
  
@@@ -3999,20 -3969,24 +4023,20 @@@
          }
      break;
  
 -  case 172:
 +  case 175:
  /* Line 1792 of yacc.c  */
- #line 1721 "awkgram.y"
 -#line 1716 "awkgram.y"
++#line 1733 "awkgram.y"
      {
 -              NODE *n;
 -
                char *arr = (yyvsp[(1) - (2)])->lextok;
 -              if ((n = lookup(arr)) != NULL && ! isarray(n))
 -                      yyerror(_("use of non-array as array"));
 -              (yyvsp[(1) - (2)])->memory = variable(arr, Node_var_new);
 +              (yyvsp[(1) - (2)])->memory = variable((yyvsp[(1) - 
(2)])->source_line, arr, Node_var_new);
                (yyvsp[(1) - (2)])->opcode = Op_push_array;
                (yyval) = list_prepend((yyvsp[(2) - (2)]), (yyvsp[(1) - (2)]));
          }
      break;
  
 -  case 173:
 +  case 176:
  /* Line 1792 of yacc.c  */
- #line 1731 "awkgram.y"
 -#line 1730 "awkgram.y"
++#line 1743 "awkgram.y"
      {
                INSTRUCTION *ip = (yyvsp[(1) - (1)])->nexti;
                if (ip->opcode == Op_push
@@@ -4026,9 -4000,9 +4050,9 @@@
          }
      break;
  
 -  case 174:
 +  case 177:
  /* Line 1792 of yacc.c  */
- #line 1743 "awkgram.y"
 -#line 1742 "awkgram.y"
++#line 1755 "awkgram.y"
      {
                (yyval) = list_append((yyvsp[(2) - (3)]), (yyvsp[(1) - (3)]));
                if ((yyvsp[(3) - (3)]) != NULL)
@@@ -4036,61 -4010,61 +4060,61 @@@
          }
      break;
  
 -  case 175:
 +  case 178:
  /* Line 1792 of yacc.c  */
- #line 1752 "awkgram.y"
 -#line 1751 "awkgram.y"
++#line 1764 "awkgram.y"
      {
                (yyvsp[(1) - (1)])->opcode = Op_postincrement;
          }
      break;
  
 -  case 176:
 +  case 179:
  /* Line 1792 of yacc.c  */
- #line 1756 "awkgram.y"
 -#line 1755 "awkgram.y"
++#line 1768 "awkgram.y"
      {
                (yyvsp[(1) - (1)])->opcode = Op_postdecrement;
          }
      break;
  
 -  case 177:
 +  case 180:
  /* Line 1792 of yacc.c  */
- #line 1759 "awkgram.y"
 -#line 1758 "awkgram.y"
++#line 1771 "awkgram.y"
      { (yyval) = NULL; }
      break;
  
 -  case 179:
 +  case 182:
  /* Line 1792 of yacc.c  */
- #line 1767 "awkgram.y"
 -#line 1766 "awkgram.y"
++#line 1779 "awkgram.y"
      { yyerrok; }
      break;
  
 -  case 180:
 +  case 183:
  /* Line 1792 of yacc.c  */
- #line 1771 "awkgram.y"
 -#line 1770 "awkgram.y"
++#line 1783 "awkgram.y"
      { yyerrok; }
      break;
  
 -  case 183:
 +  case 186:
  /* Line 1792 of yacc.c  */
- #line 1780 "awkgram.y"
 -#line 1779 "awkgram.y"
++#line 1792 "awkgram.y"
      { yyerrok; }
      break;
  
 -  case 184:
 +  case 187:
  /* Line 1792 of yacc.c  */
- #line 1784 "awkgram.y"
 -#line 1783 "awkgram.y"
++#line 1796 "awkgram.y"
      { (yyval) = (yyvsp[(1) - (1)]); yyerrok; }
      break;
  
 -  case 185:
 +  case 188:
  /* Line 1792 of yacc.c  */
- #line 1788 "awkgram.y"
 -#line 1787 "awkgram.y"
++#line 1800 "awkgram.y"
      { yyerrok; }
      break;
  
  
  /* Line 1792 of yacc.c  */
- #line 4106 "awkgram.c"
 -#line 4080 "awkgram.c"
++#line 4118 "awkgram.c"
        default: break;
      }
    /* User semantic actions sometimes alter yychar, and that requires
@@@ -4322,7 -4296,7 +4346,7 @@@ yyreturn
  
  
  /* Line 2055 of yacc.c  */
- #line 1790 "awkgram.y"
 -#line 1789 "awkgram.y"
++#line 1802 "awkgram.y"
  
  
  struct token {
diff --cc command.c
index 0944a9d,b818d85..9b07fd3
--- a/command.c
+++ b/command.c
@@@ -369,7 -369,7 +369,8 @@@ typedef short int yytype_int16
  #ifndef lint
  # define YYID(N) (N)
  #else
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static int
  YYID (int yyi)
  #else
@@@ -453,7 -453,7 +454,9 @@@ void free (void *); /* INFRINGES ON USE
  #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
  
  
--#if (! defined yyoverflow      && (! defined __cplusplus       || (defined 
YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
++#if (! defined yyoverflow \
++     && (! defined __cplusplus \
++       || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
  
  /* A type that is properly aligned for any stack member.  */
  union yyalloc
@@@ -999,7 -999,7 +1002,8 @@@ do {                                              
                          
  `--------------------------------*/
  
  /*ARGSUSED*/
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const 
yyvaluep)
  #else
@@@ -1032,7 -1032,7 +1036,8 @@@ yy_symbol_value_print (yyoutput, yytype
  | Print this symbol on YYOUTPUT.  |
  `--------------------------------*/
  
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
  #else
@@@ -1057,7 -1057,7 +1062,8 @@@ yy_symbol_print (yyoutput, yytype, yyva
  | TOP (included).                                                   |
  `------------------------------------------------------------------*/
  
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
  #else
@@@ -1087,7 -1087,7 +1093,8 @@@ do {                                            
                
  | Report that the YYRULE is going to be reduced.  |
  `------------------------------------------------*/
  
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
  #else
@@@ -1154,7 -1154,7 +1161,8 @@@ int yydebug
  #   define yystrlen strlen
  #  else
  /* Return the length of YYSTR.  */
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static YYSIZE_T
  yystrlen (const char *yystr)
  #else
@@@ -1177,7 -1177,7 +1185,8 @@@ yystrlen (yystr
  #  else
  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
     YYDEST.  */
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static char *
  yystpcpy (char *yydest, const char *yysrc)
  #else
@@@ -1391,7 -1391,7 +1400,8 @@@ yysyntax_error (YYSIZE_T *yymsg_alloc, 
  `-----------------------------------------------*/
  
  /*ARGSUSED*/
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  static void
  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
  #else
@@@ -1443,7 -1443,7 +1453,8 @@@ int yynerrs
  `----------*/
  
  #ifdef YYPARSE_PARAM
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  int
  yyparse (void *YYPARSE_PARAM)
  #else
@@@ -1452,7 -1452,7 +1463,8 @@@ yyparse (YYPARSE_PARAM
      void *YYPARSE_PARAM;
  #endif
  #else /* ! YYPARSE_PARAM */
--#if (defined __STDC__ || defined __C99__FUNC__      || defined __cplusplus || 
defined _MSC_VER)
++#if (defined __STDC__ || defined __C99__FUNC__ \
++     || defined __cplusplus || defined _MSC_VER)
  int
  yyparse (void)
  #else
diff --cc test/ChangeLog
index ba491f3,bd78c51..652480b
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@@ -1,25 -1,8 +1,30 @@@
+ 2013-02-26         Arnold D. Robbins     <address@hidden>
+ 
+       * parseme.ok: Update after change in grammar. Now with new and
+       improved error message!
+ 
 +2013-01-31         Arnold D. Robbins     <address@hidden>
 +
 +      * Makefile.am: Move functab4 into shlib tests, since it uses
 +      @load. Thanks to Anders Wallin for the report.
 +      (shlib-tests): Check --version output for "API" and run tests
 +      if there.
 +
 +2013-01-31         Andrew J. Schorr     <address@hidden>
 +
 +      * Makefile.am: To decide whether to run MPFR tests, use the output
 +      of gawk --version instead of the automake TEST_MPFR conditional (which
 +      has now been removed from configure.ac).
 +
 +2013-01-27         Arnold D. Robbins     <address@hidden>
 +
 +      * Makefile.am (EXTRA_DIST): Add all the mpfr test files. Duh.
 +      (reginttrad): Use $(srcdir)/address@hidden Double Duh.
 +
 +2013-01-27         Andrew J. Schorr     <address@hidden>
 +
 +      * Makefile.am: Add mpfr tests if MPFR is available.
 +
  2013-01-20         Arnold D. Robbins     <address@hidden>
  
        * Makefile.am (reginttrad): New test.

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

Summary of changes:
 ChangeLog       |    5 +
 awkgram.c       |  224 ++++++++++++++++++++++++++++++------------------------
 awkgram.y       |   18 ++++-
 command.c       |   34 ++++++---
 test/ChangeLog  |    5 +
 test/parseme.ok |    2 +-
 6 files changed, 173 insertions(+), 115 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

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