LexerParser: Suppress GCC -Wconversion warnings

GCC 8 warns about some of the conversions in bison-generated code.
Suppress the warnings.
This commit is contained in:
Brad King
2018-07-31 09:02:56 -04:00
parent cfa6b14f9c
commit 34257b0dd4
9 changed files with 920 additions and 896 deletions

View File

@@ -126,8 +126,11 @@ static void cmCommandArgument_yyerror(yyscan_t yyscanner, const char* message);
# pragma warning (disable: 4244) /* loss of precision */
# pragma warning (disable: 4702) /* unreachable code */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
#line 131 "cmCommandArgumentParser.cxx" /* yacc.c:339 */
#line 134 "cmCommandArgumentParser.cxx" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
@@ -200,7 +203,7 @@ int cmCommandArgument_yyparse (yyscan_t yyscanner);
/* Copy the second part of user declarations. */
#line 204 "cmCommandArgumentParser.cxx" /* yacc.c:358 */
#line 207 "cmCommandArgumentParser.cxx" /* yacc.c:358 */
#ifdef short
# undef short
@@ -498,9 +501,9 @@ static const yytype_uint8 yytranslate[] =
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint8 yyrline[] =
{
0, 96, 96, 102, 105, 110, 113, 118, 121, 126,
129, 132, 135, 138, 141, 146, 149, 152, 155, 160,
163, 168, 171, 176, 179
0, 99, 99, 105, 108, 113, 116, 121, 124, 129,
132, 135, 138, 141, 144, 149, 152, 155, 158, 163,
166, 171, 174, 179, 182
};
#endif
@@ -1297,192 +1300,192 @@ yyreduce:
switch (yyn)
{
case 2:
#line 96 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 99 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = 0;
yyGetParser->SetResult((yyvsp[0].str));
}
#line 1306 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1309 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 3:
#line 102 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 105 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1314 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1317 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 4:
#line 105 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 108 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->CombineUnions((yyvsp[-1].str), (yyvsp[0].str));
}
#line 1322 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1325 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 5:
#line 110 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 113 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = 0;
}
#line 1330 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1333 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 6:
#line 113 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 116 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->CombineUnions((yyvsp[-1].str), (yyvsp[0].str));
}
#line 1338 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1341 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 7:
#line 118 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1346 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 8:
#line 121 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1354 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1349 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 9:
#line 126 "cmCommandArgumentParser.y" /* yacc.c:1646 */
case 8:
#line 124 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1362 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1357 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 10:
case 9:
#line 129 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1370 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1365 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 11:
case 10:
#line 132 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1378 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1373 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 12:
case 11:
#line 135 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1386 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1381 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 13:
case 12:
#line 138 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1394 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1389 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 14:
case 13:
#line 141 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1402 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1397 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 14:
#line 144 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1405 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 15:
#line 146 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->ExpandSpecialVariable((yyvsp[-2].str), (yyvsp[-1].str));
}
#line 1410 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 16:
#line 149 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->ExpandSpecialVariable((yyvsp[-2].str), (yyvsp[-1].str));
}
#line 1418 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1413 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 16:
#line 152 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->ExpandSpecialVariable((yyvsp[-2].str), (yyvsp[-1].str));
}
#line 1421 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 17:
#line 152 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 155 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->ExpandVariable((yyvsp[-1].str));
}
#line 1426 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1429 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 18:
#line 155 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 158 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->ExpandVariableForAt((yyvsp[0].str));
}
#line 1434 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1437 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 19:
#line 160 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 163 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1442 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1445 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 20:
#line 163 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 166 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[-1].str);
}
#line 1450 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1453 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 21:
#line 168 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 171 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = 0;
}
#line 1458 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1461 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 22:
#line 171 "cmCommandArgumentParser.y" /* yacc.c:1646 */
#line 174 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = yyGetParser->CombineUnions((yyvsp[-1].str), (yyvsp[0].str));
}
#line 1466 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1469 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 23:
#line 176 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1474 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 24:
#line 179 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1482 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1477 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
case 24:
#line 182 "cmCommandArgumentParser.y" /* yacc.c:1646 */
{
(yyval.str) = (yyvsp[0].str);
}
#line 1485 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
break;
#line 1486 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
#line 1489 "cmCommandArgumentParser.cxx" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
@@ -1712,7 +1715,7 @@ yyreturn:
#endif
return yyresult;
}
#line 184 "cmCommandArgumentParser.y" /* yacc.c:1906 */
#line 187 "cmCommandArgumentParser.y" /* yacc.c:1906 */
/* End of grammar */

View File

@@ -55,6 +55,9 @@ static void cmCommandArgument_yyerror(yyscan_t yyscanner, const char* message);
# pragma warning (disable: 4244) /* loss of precision */
# pragma warning (disable: 4702) /* unreachable code */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
%}
/* Generate a reentrant parser object. */

File diff suppressed because it is too large Load Diff

View File

@@ -44,6 +44,9 @@ static void cmDependsJava_yyerror(yyscan_t yyscanner, const char* message);
# pragma warning (disable: 4102) /* Unused goto label. */
# pragma warning (disable: 4065) /* Switch statement contains default but no case. */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
%}
/* Generate a reentrant parser object. */

View File

@@ -108,8 +108,11 @@ static void cmExpr_yyerror(yyscan_t yyscanner, const char* message);
# pragma warning (disable: 4102) /* Unused goto label. */
# pragma warning (disable: 4065) /* Switch statement contains default but no case. */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
#line 113 "cmExprParser.cxx" /* yacc.c:339 */
#line 116 "cmExprParser.cxx" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
@@ -186,7 +189,7 @@ int cmExpr_yyparse (yyscan_t yyscanner);
/* Copy the second part of user declarations. */
#line 190 "cmExprParser.cxx" /* yacc.c:358 */
#line 193 "cmExprParser.cxx" /* yacc.c:358 */
#ifdef short
# undef short
@@ -485,9 +488,9 @@ static const yytype_uint8 yytranslate[] =
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint8 yyrline[] =
{
0, 74, 74, 79, 82, 87, 90, 95, 98, 103,
106, 109, 114, 117, 120, 125, 128, 131, 137, 142,
145, 148, 153, 156
0, 77, 77, 82, 85, 90, 93, 98, 101, 106,
109, 112, 117, 120, 123, 128, 131, 134, 140, 145,
148, 151, 156, 159
};
#endif
@@ -1282,186 +1285,186 @@ yyreduce:
switch (yyn)
{
case 2:
#line 74 "cmExprParser.y" /* yacc.c:1646 */
#line 77 "cmExprParser.y" /* yacc.c:1646 */
{
cmExpr_yyget_extra(yyscanner)->SetResult((yyvsp[0].Number));
}
#line 1290 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1293 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 3:
#line 79 "cmExprParser.y" /* yacc.c:1646 */
#line 82 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1298 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1301 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 4:
#line 82 "cmExprParser.y" /* yacc.c:1646 */
#line 85 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) | (yyvsp[0].Number);
}
#line 1306 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1309 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 5:
#line 87 "cmExprParser.y" /* yacc.c:1646 */
#line 90 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1314 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1317 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 6:
#line 90 "cmExprParser.y" /* yacc.c:1646 */
#line 93 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) ^ (yyvsp[0].Number);
}
#line 1322 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1325 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 7:
#line 95 "cmExprParser.y" /* yacc.c:1646 */
#line 98 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1330 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1333 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 8:
#line 98 "cmExprParser.y" /* yacc.c:1646 */
#line 101 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) & (yyvsp[0].Number);
}
#line 1338 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1341 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 9:
#line 103 "cmExprParser.y" /* yacc.c:1646 */
#line 106 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1346 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1349 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 10:
#line 106 "cmExprParser.y" /* yacc.c:1646 */
#line 109 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) << (yyvsp[0].Number);
}
#line 1354 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1357 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 11:
#line 109 "cmExprParser.y" /* yacc.c:1646 */
#line 112 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) >> (yyvsp[0].Number);
}
#line 1362 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1365 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 12:
#line 114 "cmExprParser.y" /* yacc.c:1646 */
#line 117 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1370 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1373 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 13:
#line 117 "cmExprParser.y" /* yacc.c:1646 */
#line 120 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) + (yyvsp[0].Number);
}
#line 1378 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1381 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 14:
#line 120 "cmExprParser.y" /* yacc.c:1646 */
#line 123 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) - (yyvsp[0].Number);
}
#line 1386 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1389 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 15:
#line 125 "cmExprParser.y" /* yacc.c:1646 */
#line 128 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1394 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1397 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 16:
#line 128 "cmExprParser.y" /* yacc.c:1646 */
#line 131 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) * (yyvsp[0].Number);
}
#line 1402 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1405 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 17:
#line 131 "cmExprParser.y" /* yacc.c:1646 */
#line 134 "cmExprParser.y" /* yacc.c:1646 */
{
if (yyvsp[0].Number == 0) {
throw std::overflow_error("divide by zero");
}
(yyval.Number) = (yyvsp[-2].Number) / (yyvsp[0].Number);
}
#line 1413 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1416 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 18:
#line 137 "cmExprParser.y" /* yacc.c:1646 */
#line 140 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-2].Number) % (yyvsp[0].Number);
}
#line 1421 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1424 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 19:
#line 142 "cmExprParser.y" /* yacc.c:1646 */
#line 145 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1429 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1432 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 20:
#line 145 "cmExprParser.y" /* yacc.c:1646 */
#line 148 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = + (yyvsp[0].Number);
}
#line 1437 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1440 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 21:
#line 148 "cmExprParser.y" /* yacc.c:1646 */
#line 151 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = - (yyvsp[0].Number);
}
#line 1445 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1448 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 22:
#line 153 "cmExprParser.y" /* yacc.c:1646 */
#line 156 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[0].Number);
}
#line 1453 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1456 "cmExprParser.cxx" /* yacc.c:1646 */
break;
case 23:
#line 156 "cmExprParser.y" /* yacc.c:1646 */
#line 159 "cmExprParser.y" /* yacc.c:1646 */
{
(yyval.Number) = (yyvsp[-1].Number);
}
#line 1461 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1464 "cmExprParser.cxx" /* yacc.c:1646 */
break;
#line 1465 "cmExprParser.cxx" /* yacc.c:1646 */
#line 1468 "cmExprParser.cxx" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
@@ -1691,7 +1694,7 @@ yyreturn:
#endif
return yyresult;
}
#line 161 "cmExprParser.y" /* yacc.c:1906 */
#line 164 "cmExprParser.y" /* yacc.c:1906 */
/* End of grammar */

View File

@@ -37,6 +37,9 @@ static void cmExpr_yyerror(yyscan_t yyscanner, const char* message);
# pragma warning (disable: 4102) /* Unused goto label. */
# pragma warning (disable: 4065) /* Switch statement contains default but no case. */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
%}
/* Generate a reentrant parser object. */

View File

@@ -127,8 +127,11 @@ static void cmFortran_yyerror(yyscan_t yyscanner, const char* message)
# pragma warning (disable: 4127) /* Conditional expression is constant. */
# pragma warning (disable: 4244) /* Conversion to smaller type, data loss. */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
#line 132 "cmFortranParser.cxx" /* yacc.c:339 */
#line 135 "cmFortranParser.cxx" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
@@ -248,11 +251,11 @@ extern int cmFortran_yydebug;
union YYSTYPE
{
#line 70 "cmFortranParser.y" /* yacc.c:355 */
#line 73 "cmFortranParser.y" /* yacc.c:355 */
char* string;
#line 256 "cmFortranParser.cxx" /* yacc.c:355 */
#line 259 "cmFortranParser.cxx" /* yacc.c:355 */
};
typedef union YYSTYPE YYSTYPE;
@@ -268,7 +271,7 @@ int cmFortran_yyparse (yyscan_t yyscanner);
/* Copy the second part of user declarations. */
#line 272 "cmFortranParser.cxx" /* yacc.c:358 */
#line 275 "cmFortranParser.cxx" /* yacc.c:358 */
#ifdef short
# undef short
@@ -569,13 +572,13 @@ static const yytype_uint8 yytranslate[] =
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint8 yyrline[] =
{
0, 98, 98, 98, 101, 105, 110, 119, 125, 132,
137, 141, 146, 154, 159, 164, 169, 174, 179, 184,
189, 194, 198, 202, 206, 210, 211, 216, 216, 216,
217, 217, 218, 218, 219, 219, 220, 220, 221, 221,
222, 222, 223, 223, 224, 224, 225, 225, 228, 229,
230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
240, 241, 242, 243
0, 101, 101, 101, 104, 108, 113, 122, 128, 135,
140, 144, 149, 157, 162, 167, 172, 177, 182, 187,
192, 197, 201, 205, 209, 213, 214, 219, 219, 219,
220, 220, 221, 221, 222, 222, 223, 223, 224, 224,
225, 225, 226, 226, 227, 227, 228, 228, 231, 232,
233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
243, 244, 245, 246
};
#endif
@@ -1527,26 +1530,26 @@ yyreduce:
switch (yyn)
{
case 4:
#line 101 "cmFortranParser.y" /* yacc.c:1646 */
#line 104 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_SetInInterface(parser, true);
}
#line 1536 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1539 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 5:
#line 105 "cmFortranParser.y" /* yacc.c:1646 */
#line 108 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleUse(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1546 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1549 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 6:
#line 110 "cmFortranParser.y" /* yacc.c:1646 */
#line 113 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
if (cmsysString_strcasecmp((yyvsp[-2].string), "function") != 0 &&
@@ -1556,22 +1559,22 @@ yyreduce:
}
free((yyvsp[-2].string));
}
#line 1560 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1563 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 7:
#line 119 "cmFortranParser.y" /* yacc.c:1646 */
#line 122 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleSubmodule(parser, (yyvsp[-4].string), (yyvsp[-2].string));
free((yyvsp[-4].string));
free((yyvsp[-2].string));
}
#line 1571 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1574 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 8:
#line 125 "cmFortranParser.y" /* yacc.c:1646 */
#line 128 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleSubmoduleNested(parser, (yyvsp[-6].string), (yyvsp[-4].string), (yyvsp[-2].string));
@@ -1579,40 +1582,40 @@ yyreduce:
free((yyvsp[-4].string));
free((yyvsp[-2].string));
}
#line 1583 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1586 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 9:
#line 132 "cmFortranParser.y" /* yacc.c:1646 */
#line 135 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_SetInInterface(parser, true);
free((yyvsp[-2].string));
}
#line 1593 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1596 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 10:
#line 137 "cmFortranParser.y" /* yacc.c:1646 */
#line 140 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_SetInInterface(parser, false);
}
#line 1602 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1605 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 11:
#line 141 "cmFortranParser.y" /* yacc.c:1646 */
#line 144 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleUse(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1612 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1615 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 12:
#line 146 "cmFortranParser.y" /* yacc.c:1646 */
#line 149 "cmFortranParser.y" /* yacc.c:1646 */
{
if (cmsysString_strcasecmp((yyvsp[-4].string), "non_intrinsic") == 0) {
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
@@ -1621,139 +1624,139 @@ yyreduce:
free((yyvsp[-4].string));
free((yyvsp[-2].string));
}
#line 1625 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1628 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 13:
#line 154 "cmFortranParser.y" /* yacc.c:1646 */
#line 157 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1635 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1638 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 14:
#line 159 "cmFortranParser.y" /* yacc.c:1646 */
#line 162 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleLineDirective(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1645 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1648 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 15:
#line 164 "cmFortranParser.y" /* yacc.c:1646 */
#line 167 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1655 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1658 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 16:
#line 169 "cmFortranParser.y" /* yacc.c:1646 */
#line 172 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1665 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1668 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 17:
#line 174 "cmFortranParser.y" /* yacc.c:1646 */
#line 177 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleDefine(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1675 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1678 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 18:
#line 179 "cmFortranParser.y" /* yacc.c:1646 */
#line 182 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleUndef(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1685 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1688 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 19:
#line 184 "cmFortranParser.y" /* yacc.c:1646 */
#line 187 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleIfdef(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1695 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1698 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 20:
#line 189 "cmFortranParser.y" /* yacc.c:1646 */
#line 192 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleIfndef(parser, (yyvsp[-2].string));
free((yyvsp[-2].string));
}
#line 1705 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1708 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 21:
#line 194 "cmFortranParser.y" /* yacc.c:1646 */
#line 197 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleIf(parser);
}
#line 1714 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1717 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 22:
#line 198 "cmFortranParser.y" /* yacc.c:1646 */
#line 201 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleElif(parser);
}
#line 1723 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1726 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 23:
#line 202 "cmFortranParser.y" /* yacc.c:1646 */
#line 205 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleElse(parser);
}
#line 1732 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1735 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 24:
#line 206 "cmFortranParser.y" /* yacc.c:1646 */
#line 209 "cmFortranParser.y" /* yacc.c:1646 */
{
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
cmFortranParser_RuleEndif(parser);
}
#line 1741 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1744 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 48:
#line 228 "cmFortranParser.y" /* yacc.c:1646 */
#line 231 "cmFortranParser.y" /* yacc.c:1646 */
{ free ((yyvsp[0].string)); }
#line 1747 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1750 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
case 55:
#line 235 "cmFortranParser.y" /* yacc.c:1646 */
#line 238 "cmFortranParser.y" /* yacc.c:1646 */
{ free ((yyvsp[0].string)); }
#line 1753 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1756 "cmFortranParser.cxx" /* yacc.c:1646 */
break;
#line 1757 "cmFortranParser.cxx" /* yacc.c:1646 */
#line 1760 "cmFortranParser.cxx" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
@@ -1983,6 +1986,6 @@ yyreturn:
#endif
return yyresult;
}
#line 246 "cmFortranParser.y" /* yacc.c:1906 */
#line 249 "cmFortranParser.y" /* yacc.c:1906 */
/* End of grammar */

View File

@@ -56,6 +56,9 @@ static void cmFortran_yyerror(yyscan_t yyscanner, const char* message)
# pragma warning (disable: 4127) /* Conditional expression is constant. */
# pragma warning (disable: 4244) /* Conversion to smaller type, data loss. */
#endif
#if defined(__GNUC__) && __GNUC__ >= 8
# pragma GCC diagnostic ignored "-Wconversion"
#endif
%}
/* Generate a reentrant parser object. */

View File

@@ -130,7 +130,7 @@ extern int cmFortran_yydebug;
union YYSTYPE
{
#line 70 "cmFortranParser.y" /* yacc.c:1909 */
#line 73 "cmFortranParser.y" /* yacc.c:1909 */
char* string;