data.c (gfc_assign_data_value): Handle USE_MAPPED_LOCATION.
* data.c (gfc_assign_data_value): Handle USE_MAPPED_LOCATION. * scanner.c (gfc_gobble_whitespace): Likewise. From-SVN: r114310
This commit is contained in:
parent
e118597e19
commit
45a82bd957
@ -1,3 +1,8 @@
|
||||
2006-06-01 Per Bothner <bothner@bothner.com>
|
||||
|
||||
* data.c (gfc_assign_data_value): Handle USE_MAPPED_LOCATION.
|
||||
* scanner.c (gfc_gobble_whitespace): Likewise.
|
||||
|
||||
2006-06-01 Paul Thomas <pault@gcc.gnu.org>
|
||||
|
||||
PR fortran/25098
|
||||
|
@ -325,8 +325,14 @@ gfc_assign_data_value (gfc_expr * lvalue, gfc_expr * rvalue, mpz_t index)
|
||||
/* Order in which the expressions arrive here depends on whether they
|
||||
are from data statements or F95 style declarations. Therefore,
|
||||
check which is the most recent. */
|
||||
#ifdef USE_MAPPED_LOCATION
|
||||
expr = (LOCATION_LINE (init->where.lb->location)
|
||||
> LOCATION_LINE (rvalue->where.lb->location))
|
||||
? init : rvalue;
|
||||
#else
|
||||
expr = (init->where.lb->linenum > rvalue->where.lb->linenum) ?
|
||||
init : rvalue;
|
||||
#endif
|
||||
gfc_notify_std (GFC_STD_GNU, "Extension: re-initialization "
|
||||
"of '%s' at %L", symbol->name, &expr->where);
|
||||
return;
|
||||
|
@ -852,11 +852,18 @@ gfc_gobble_whitespace (void)
|
||||
/* Issue a warning for nonconforming tabs. We keep track of the line
|
||||
number because the Fortran matchers will often back up and the same
|
||||
line will be scanned multiple times. */
|
||||
if (!gfc_option.warn_tabs && c == '\t'
|
||||
&& gfc_current_locus.lb->linenum != linenum)
|
||||
if (!gfc_option.warn_tabs && c == '\t')
|
||||
{
|
||||
linenum = gfc_current_locus.lb->linenum;
|
||||
gfc_warning_now ("Nonconforming tab character at %C");
|
||||
#ifdef USE_MAPPED_LOCATION
|
||||
int cur_linenum = LOCATION_LINE (gfc_current_locus.lb->location);
|
||||
#else
|
||||
int cur_linenum = gfc_current_locus.lb->linenum;
|
||||
#endif
|
||||
if (cur_linenum != linenum)
|
||||
{
|
||||
linenum = cur_linenum;
|
||||
gfc_warning_now ("Nonconforming tab character at %C");
|
||||
}
|
||||
}
|
||||
}
|
||||
while (gfc_is_whitespace (c));
|
||||
|
Loading…
Reference in New Issue
Block a user