[Bug fortran/24866] internal compiler error
--- Comment #11 from pault at gcc dot gnu dot org 2006-08-30 05:19 --- Subject: Bug 24866 Author: pault Date: Wed Aug 30 05:18:36 2006 New Revision: 116578 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=116578 Log: 2006-08-30 Paul Thomas [EMAIL PROTECTED] PR fortran/28885 REGRESSION FIX * trans-expr.c (gfc_conv_aliased_arg): Ensure that the temp declaration is retained for INTENT(OUT) arguments. PR fortran/28873 REGRESSION FIX PR fortran/20067 * resolve.c (resolve_generic_f): Make error message more comprehensible. (resolve_generic_s): Restructure search for specific procedures to be similar to resolve_generic_f and change to similar error message. Ensure that symbol reference is refreshed, in case the search produces a NULL. (resolve_specific_s): Restructure search, as above and as resolve_specific_f. Ensure that symbol reference is refreshed, in case the search produces a NULL. PR fortran/25077 PR fortran/25102 * interface.c (check_operator_interface): Throw error if the interface assignment tries to change intrinsic type assigments or has less than two arguments. Also, it is an error if an interface operator contains an alternate return. PR fortran/24866 * parse.c (gfc_fixup_sibling_symbols): Do not modify the symbol if it is a dummy in the contained namespace. 2006-08-30 Paul Thomas [EMAIL PROTECTED] PR fortran/28885 * gfortran.dg/aliasing_dummy_2.f90: New test. PR fortran/20067 * gfortran.dg/generic_5.f90: Change error message. PR fortran/28873 * gfortran.dg/generic_6.f90: New test. PR fortran/25077 * gfortran.dg/redefined_intrinsic_assignment.f90: New test. PR fortran/25102 * gfortran.dg/invalid_interface_assignment.f90: New test. PR fortran/24866 * gfortran.dg/module_proc_external_dummy.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/aliasing_dummy_2.f90 trunk/gcc/testsuite/gfortran.dg/generic_6.f90 trunk/gcc/testsuite/gfortran.dg/invalid_interface_assignment.f90 trunk/gcc/testsuite/gfortran.dg/module_proc_external_dummy.f90 trunk/gcc/testsuite/gfortran.dg/redefined_intrinsic_assignment.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/interface.c trunk/gcc/fortran/parse.c trunk/gcc/fortran/resolve.c trunk/gcc/fortran/trans-expr.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/generic_5.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #12 from pault at gcc dot gnu dot org 2006-08-30 05:19 --- Subject: Bug 24866 Author: pault Date: Wed Aug 30 05:19:34 2006 New Revision: 116579 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=116579 Log: 2006-08-30 Paul Thomas [EMAIL PROTECTED] PR fortran/28885 REGRESSION FIX * trans-expr.c (gfc_conv_aliased_arg): Ensure that the temp declaration is retained for INTENT(OUT) arguments. PR fortran/28873 REGRESSION FIX PR fortran/20067 * resolve.c (resolve_generic_f): Make error message more comprehensible. (resolve_generic_s): Restructure search for specific procedures to be similar to resolve_generic_f and change to similar error message. Ensure that symbol reference is refreshed, in case the search produces a NULL. (resolve_specific_s): Restructure search, as above and as resolve_specific_f. Ensure that symbol reference is refreshed, in case the search produces a NULL. PR fortran/25077 PR fortran/25102 * interface.c (check_operator_interface): Throw error if the interface assignment tries to change intrinsic type assigments or has less than two arguments. Also, it is an error if an interface operator contains an alternate return. PR fortran/24866 * parse.c (gfc_fixup_sibling_symbols): Do not modify the symbol if it is a dummy in the contained namespace. 2006-08-30 Paul Thomas [EMAIL PROTECTED] PR fortran/28885 * gfortran.dg/aliasing_dummy_2.f90: New test. PR fortran/20067 * gfortran.dg/generic_5.f90: Change error message. PR fortran/28873 * gfortran.dg/generic_6.f90: New test. PR fortran/25077 * gfortran.dg/redefined_intrinsic_assignment.f90: New test. PR fortran/25102 * gfortran.dg/invalid_interface_assignment.f90: New test. PR fortran/24866 * gfortran.dg/module_proc_external_dummy.f90: New test. Added: branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/aliasing_dummy_2.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/generic_6.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/invalid_interface_assignment.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/module_proc_external_dummy.f90 branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/redefined_intrinsic_assignment.f90 Modified: branches/gcc-4_1-branch/gcc/fortran/ChangeLog branches/gcc-4_1-branch/gcc/fortran/interface.c branches/gcc-4_1-branch/gcc/fortran/parse.c branches/gcc-4_1-branch/gcc/fortran/resolve.c branches/gcc-4_1-branch/gcc/fortran/trans-expr.c branches/gcc-4_1-branch/gcc/testsuite/ChangeLog branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/generic_5.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #13 from pault at gcc dot gnu dot org 2006-08-30 05:33 --- Fixed on trunk and 4.1 Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #9 from patchapp at dberlin dot org 2006-08-20 06:01 --- Subject: Bug number PR24866 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-08/msg00711.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #10 from patchapp at dberlin dot org 2006-08-20 07:45 --- Subject: Bug number PR24866 A patch for this bug has been added to the patch tracker. The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-08/msg00719.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #7 from pault at gcc dot gnu dot org 2006-08-19 12:32 --- Yes, the problem is as I thought; rename the dummy and the external procedure, say to str1, and the module compiles fine. It also compiles if the order of the subroutines is changed. These are symptomatic of the symbol for str() being made available to sub_module by host association and then having the external attribute added to it. This is confirmed by comparing the parse trees for the two different orders for the subroutines. In the case that fails, we have procedure name = sub_module symtree: str Ambig 0 from namespace test_module symtree: sub_module Ambig 0 from namespace test_module whilst the one that succeeds has symtree: sub_module Ambig 0 from namespace test_module symtree: str Ambig 0 symbol str (UNKNOWN 0)(PROCEDURE UNKNOWN-INTENT UNKNOWN-ACCESS UNKNOWN-PROC EXTERNAL DUMMY) I am not sure where this screw up occurs but am looking very closely at decl.c(attr_decl1). Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #8 from pault at gcc dot gnu dot org 2006-08-19 16:54 --- Created an attachment (id=12098) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12098action=view) A fix for the PR and a testsuite entry The problem turned out to be in parse.c(gfc_fixup_sibling_symbols), which insisted on fixing up procedures to refer to the parent namespace version even if the contained symbol is a dummy. The fix is simple; just a modification to an if statement. Paul -- pault at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |pault at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #6 from pault at gcc dot gnu dot org 2006-08-19 05:49 --- I know you're on vacation, Paul, but I think what looks troubling to us would look trivial to you, friendly as you are with the module code in gfortran! I'll have a look today - I am in the midst of a triage of the fortran PRs and this comes out as one of the straight to the operating theatre category. Offhand, I think that it is a primary.c/decl.c problem rather than a module.c but I'll let you know. Paul -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #5 from fxcoudert at gcc dot gnu dot org 2006-07-24 21:30 --- This one is still here, segfaulting or giving incorrect error message depending on the optimization level used for building the front-end. We enter write_symbol1 with p-u.rsym-sym.name = sub_module, we go to p-right-u.rsym-sym.name which is str and then p-right-left-u.rsym-sym.name is UCS-2BE//, which suddenly doesn't make sense :) I know you're on vacation, Paul, but I think what looks troubling to us would look trivial to you, friendly as you are with the module code in gfortran! -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added CC||paulthomas2 at wanadoo dot ||fr Last reconfirmed|2006-05-21 20:37:51 |2006-07-24 21:30:23 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #4 from fxcoudert at gcc dot gnu dot org 2006-05-21 20:37 --- Why is this code invalid? (the keywork ice-on-invalid-code is set) No error is reported with Sun, Intel and g95. -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added CC||fxcoudert at gcc dot gnu dot ||org Last reconfirmed|2006-01-27 20:46:25 |2006-05-21 20:37:51 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-27 20:46 --- I now get: end module test_module 1 Internal Error at (1): write_symbol(): bad module symbol 'UCS-2BE//' -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Last reconfirmed|2006-01-03 17:07:10 |2006-01-27 20:46:25 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-01-03 17:07 --- Not PPC specific. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added GCC build triplet|powerpc64-linux | GCC host triplet|powerpc64-linux | GCC target triplet|powerpc64-linux | Last reconfirmed|2005-11-15 04:21:39 |2006-01-03 17:07:10 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866
[Bug fortran/24866] internal compiler error
--- Comment #1 from pinskia at gcc dot gnu dot org 2005-11-15 04:21 --- Confirmed, maybe related to PR 20892. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Keywords||ice-on-invalid-code Last reconfirmed|-00-00 00:00:00 |2005-11-15 04:21:39 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24866