diff options
author | Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de> | 2005-06-05 00:20:58 +0200 |
---|---|---|
committer | Tobias Schlüter <tobi@gcc.gnu.org> | 2005-06-05 00:20:58 +0200 |
commit | 8e4005784d54ce47666f18cf0b81c2903a6bb881 (patch) | |
tree | d45ab7551809470c6d8d84fd340c42040c5300a0 | |
parent | 579e4a82ecac7f9204f505c69d4e9551421324db (diff) | |
download | gcc-8e4005784d54ce47666f18cf0b81c2903a6bb881.zip gcc-8e4005784d54ce47666f18cf0b81c2903a6bb881.tar.gz gcc-8e4005784d54ce47666f18cf0b81c2903a6bb881.tar.bz2 |
re PR fortran/19195 (gfortran: ICE in final_scan_insn, at final.c:1843)
fortran/
2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
Erik Schnetter <schnetter@aei.mpg.de>
PR fortran/19195
* trans.c (gfc_get_backend_locus): Remove unnecessary adjustment,
remove FIXME comment.
testsuite/
2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/19195
* gfortran.dg/debug_1.f90: New test.
Co-Authored-By: Erik Schnetter <schnetter@aei.mpg.de>
From-SVN: r100603
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/debug_1.f90 | 20 |
4 files changed, 31 insertions, 2 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index bc8c7b4..27be5f5 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,4 +1,10 @@ 2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> + Erik Schnetter <schnetter@aei.mpg.de> + + * trans.c (gfc_get_backend_locus): Remove unnecessary adjustment, + remove FIXME comment. + +2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> * match.c (match_forall_iterator): Don't immediately give error if '=' is not followed by an expression. diff --git a/gcc/fortran/trans.c b/gcc/fortran/trans.c index c4ae366..fe41654 100644 --- a/gcc/fortran/trans.c +++ b/gcc/fortran/trans.c @@ -437,9 +437,9 @@ gfc_get_backend_locus (locus * loc) { loc->lb = gfc_getmem (sizeof (gfc_linebuf)); #ifdef USE_MAPPED_LOCATION - loc->lb->location = input_location; /* FIXME adjust?? */ + loc->lb->location = input_location; #else - loc->lb->linenum = input_line - 1; + loc->lb->linenum = input_line; #endif loc->lb->file = gfc_current_backend_file; } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index db1bea6..aba8829 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,8 @@ 2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> + PR fortran/19195 + * gfortran.dg/debug_1.f90: New test. + * gfortran.dg/forall_1.f90: New test. 2005-06-04 Erik Edelmann <erik.edelmann@iki.fi> diff --git a/gcc/testsuite/gfortran.dg/debug_1.f90 b/gcc/testsuite/gfortran.dg/debug_1.f90 new file mode 100644 index 0000000..808f41c --- /dev/null +++ b/gcc/testsuite/gfortran.dg/debug_1.f90 @@ -0,0 +1,20 @@ +subroutine gfc_debug_bug (n,m,k,ax,bx,c) +! above line must be the first line +! { dg-do compile } +! { dg-options "-g" } +! PR 19195 +! we set line numbers wrongly, which made the compiler choke when emitting +! debug information. + implicit none + integer :: n, m + integer :: k(n+m) + real :: ax(:), bx(n), c(n+m) + + integer :: i + real :: f + + i = k(n) + f = c(n) + f = bx(n) + f = ax(n) +end subroutine gfc_debug_bug |