diff options
author | Tobias Burnus <tobias@codesourcery.com> | 2020-10-14 15:48:22 +0200 |
---|---|---|
committer | Tobias Burnus <tobias@codesourcery.com> | 2020-10-14 15:48:22 +0200 |
commit | 4aa9742252ea419947fe32ff64c7546c92286b96 (patch) | |
tree | 7987aa8f357420c58ecd58572ea75e030354d4b5 /gcc | |
parent | ec5e6467091ee0f8de2f894f0c1669465a8440f1 (diff) | |
download | gcc-4aa9742252ea419947fe32ff64c7546c92286b96.zip gcc-4aa9742252ea419947fe32ff64c7546c92286b96.tar.gz gcc-4aa9742252ea419947fe32ff64c7546c92286b96.tar.bz2 |
Fortran: Fix line-truncation warning for !$acc and !gcc$
gcc/fortran/ChangeLog:
PR fortran/97390
* scanner.c (load_line): Fix line-truncation warning for !$acc
and !gcc$ in free-form source code.
gcc/testsuite/ChangeLog:
PR fortran/97390
* gfortran.dg/goacc/warn_truncated.f90: New test.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/scanner.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/goacc/warn_truncated.f90 | 11 |
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index 6f93508..fd11f5a 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -1876,13 +1876,13 @@ load_line (FILE *input, gfc_char_t **pbuf, int *pbuflen, const int *first_char) if (((*pbuf)[comment_ix+1] == 'g' || (*pbuf)[comment_ix+1] == 'G') && ((*pbuf)[comment_ix+2] == 'c' || (*pbuf)[comment_ix+2] == 'C') && ((*pbuf)[comment_ix+3] == 'c' || (*pbuf)[comment_ix+3] == 'C') - && (*pbuf)[comment_ix+4] == '$') + && c == '$') first_comment = seen_comment = false; if (flag_openacc && (*pbuf)[comment_ix+1] == '$' && ((*pbuf)[comment_ix+2] == 'a' || (*pbuf)[comment_ix+2] == 'A') && ((*pbuf)[comment_ix+3] == 'c' || (*pbuf)[comment_ix+3] == 'C') - && ((*pbuf)[comment_ix+4] == 'c' || (*pbuf)[comment_ix+4] == 'C')) + && (c == 'c' || c == 'C')) first_comment = seen_comment = false; } diff --git a/gcc/testsuite/gfortran.dg/goacc/warn_truncated.f90 b/gcc/testsuite/gfortran.dg/goacc/warn_truncated.f90 new file mode 100644 index 0000000..15ef3f5 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/goacc/warn_truncated.f90 @@ -0,0 +1,11 @@ +! { dg-do compile } +! PR fortran/97390 +! +integer :: tempRbuffer, array, compactHaloInfo, dimsizes, nHaloLayers, gpu_nList_send, gpu_idx_send, gpu_bufferOffset_send, counter + !$acc data present(tempRbuffer, array, compactHaloInfo, dimsizes, nHaloLayers, gpu_nList_send, gpu_idx_send, gpu_bufferOffset_send) async(counter+1) ! { dg-error "Line truncated" } +! { dg-error "Syntax error in Open.* variable list" "" { target "*-*-*" } .-1 } + + !$acc end data ! { dg-error "Unexpected !.ACC END DATA statement" } +end + +! { dg-message "some warnings being treated as errors" "" {target "*-*-*"} 0 } |