This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/34359] ICE in December 6 version of gfortran when compiling a file with two routines that contain INCLUDE statements
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 Dec 2007 21:00:20 -0000
- Subject: [Bug fortran/34359] ICE in December 6 version of gfortran when compiling a file with two routines that contain INCLUDE statements
- References: <bug-34359-14284@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from jakub at gcc dot gnu dot org 2007-12-08 21:00 -------
Subject: Bug 34359
Author: jakub
Date: Sat Dec 8 21:00:06 2007
New Revision: 130712
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130712
Log:
PR fortran/34359
* gfortran.h (gfc_file): Remove sibling and down fields.
* scanner.c (file_changes, file_changes_cur, file_changes_count,
file_changes_allocated): New variables.
(add_file_change, report_file_change): New functions.
(change_file): Remove.
(gfc_start_source_files, gfc_end_source_files): Call
report_file_change instead of change_file.
(gfc_advance_line): Call report_file_change instead of change_file,
call it even if lb->file == lb->next->file.
(get_file): Revert last changes.
(preprocessor_line): Call add_file_change when entering or leaving
a file.
(load_file): Likewise. Set file_change[...].lb for all newly added
file changes.
* gfortran.dg/include_1.f90: New test.
* gfortran.dg/include_1.inc: New.
* gfortran.dg/include_2.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/include_1.f90
trunk/gcc/testsuite/gfortran.dg/include_1.inc
trunk/gcc/testsuite/gfortran.dg/include_2.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/scanner.c
trunk/gcc/testsuite/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34359