Skip to content
Snippets Groups Projects
Commit 45a82bd9 authored by Per Bothner's avatar Per Bothner Committed by Per Bothner
Browse files

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
parent e118597e
No related branches found
No related tags found
No related merge requests found
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));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment