re PR fortran/16433 (wrong hexadecimal constant warning)
PR fortran/16433 * primary.c (match_boz_constant): Call gfc_notify_std only if we actually have a non-standard boz-literal-constant. From-SVN: r84514
This commit is contained in:
parent
6fd21094e5
commit
88199e7c89
|
@ -12,7 +12,11 @@
|
|||
(gfc_match_return): RETURN in main program is an extension.
|
||||
(gfc_match_block_data): A space is required before a block data
|
||||
name.
|
||||
|
||||
|
||||
PR fortran/16433
|
||||
* primary.c (match_boz_constant): Call gfc_notify_std only if
|
||||
we actually have a non-standard boz-literal-constant.
|
||||
|
||||
2004-07-11 Joseph S. Myers <jsm@polyomino.org.uk>
|
||||
|
||||
* f95-lang.c (set_block): Remove.
|
||||
|
|
|
@ -235,7 +235,7 @@ match_integer_constant (gfc_expr ** result, int signflag)
|
|||
static match
|
||||
match_boz_constant (gfc_expr ** result)
|
||||
{
|
||||
int radix, delim, length;
|
||||
int radix, delim, length, x_hex;
|
||||
locus old_loc;
|
||||
char *buffer;
|
||||
gfc_expr *e;
|
||||
|
@ -244,6 +244,7 @@ match_boz_constant (gfc_expr ** result)
|
|||
old_loc = gfc_current_locus;
|
||||
gfc_gobble_whitespace ();
|
||||
|
||||
x_hex = 0;
|
||||
switch (gfc_next_char ())
|
||||
{
|
||||
case 'b':
|
||||
|
@ -255,12 +256,7 @@ match_boz_constant (gfc_expr ** result)
|
|||
rname = "octal";
|
||||
break;
|
||||
case 'x':
|
||||
if (pedantic
|
||||
&& (gfc_notify_std (GFC_STD_GNU, "Extension: Hexadecimal "
|
||||
"constant at %C uses non-standard syntax.")
|
||||
== FAILURE))
|
||||
goto backup;
|
||||
|
||||
x_hex = 1;
|
||||
/* Fall through. */
|
||||
case 'z':
|
||||
radix = 16;
|
||||
|
@ -310,6 +306,16 @@ match_boz_constant (gfc_expr ** result)
|
|||
return MATCH_ERROR;
|
||||
}
|
||||
|
||||
if (x_hex
|
||||
&& pedantic
|
||||
&& (gfc_notify_std (GFC_STD_GNU, "Extension: Hexadecimal "
|
||||
"constant at %C uses non-standard syntax.")
|
||||
== FAILURE))
|
||||
{
|
||||
gfc_free_expr (e);
|
||||
return MATCH_ERROR;
|
||||
}
|
||||
|
||||
*result = e;
|
||||
return MATCH_YES;
|
||||
|
||||
|
|
Loading…
Reference in New Issue