aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/scanner.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/fortran/scanner.c')
-rw-r--r--gcc/fortran/scanner.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c
index 6a7a5b6..be9c509 100644
--- a/gcc/fortran/scanner.c
+++ b/gcc/fortran/scanner.c
@@ -1416,7 +1416,8 @@ restart:
{
if (in_string)
{
- gfc_current_locus.nextc--;
+ if (gfc_current_locus.nextc)
+ gfc_current_locus.nextc--;
if (warn_ampersand && in_string == INSTRING_WARN)
gfc_warning (OPT_Wampersand,
"Missing %<&%> in continued character "
@@ -1427,7 +1428,10 @@ restart:
/* Both !$omp and !$ -fopenmp continuation lines have & on the
continuation line only optionally. */
else if (openmp_flag || openacc_flag || openmp_cond_flag)
- gfc_current_locus.nextc--;
+ {
+ if (gfc_current_locus.nextc)
+ gfc_current_locus.nextc--;
+ }
else
{
c = ' ';