This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/40005] segfault in gt_ggc_mx_lang_tree_node
- From: "jv244 at cam dot ac dot uk" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 24 Jul 2009 16:56:59 -0000
- Subject: [Bug fortran/40005] segfault in gt_ggc_mx_lang_tree_node
- References: <bug-40005-6642@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #31 from jv244 at cam dot ac dot uk 2009-07-24 16:56 -------
(In reply to comment #30)
> Hmm, that looks unrelated ...?
>
doesn't seem to happen on a clean trunk ( a few days more recent ). This is a
reduced testcase for this failure:
> gfortran -g bug.f90
bug.f90: In function ?str_search?:
bug.f90:32:0: internal compiler error: in splice_child_die, at dwarf2out.c:6983
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
> cat bug.f90
MODULE string_utilities
CONTAINS
SUBROUTINE xstring(string,ia,ib)
CHARACTER(LEN=*), INTENT(IN) :: string
INTEGER, INTENT(OUT) :: ia, ib
ia = 1
ib = LEN_TRIM(string)
IF (ib>0) THEN
DO WHILE (string(ia:ia)==' ')
ia = ia + 1
END DO
END IF
END SUBROUTINE xstring
FUNCTION str_comp(str1,str2) RESULT (equal)
CHARACTER(LEN=*), INTENT(IN) :: str1, str2
LOGICAL :: equal
INTEGER :: i1, i2, j1, j2
i1 = 0
i2 = 0
j1 = 0
j2 = 0
CALL xstring(str1,i1,i2)
CALL xstring(str2,j1,j2)
equal = (str1(i1:i2)==str2(j1:j2))
END FUNCTION str_comp
FUNCTION str_search(str1,n,str2) RESULT (pos)
CHARACTER(LEN=*), INTENT(IN) :: str1( : )
INTEGER, INTENT(IN) :: n
CHARACTER(LEN=*), INTENT(IN) :: str2
INTEGER :: pos
INTEGER :: i
pos = 0
DO i = 1, n
IF (str_comp(str1(i),str2)) THEN
pos = i
EXIT
END IF
END DO
END FUNCTION str_search
END MODULE string_utilities
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40005