* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
@ 2012-12-28 21:12 ` bugs at stellardeath dot org
2012-12-28 22:03 ` kargl at gcc dot gnu.org
` (11 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: bugs at stellardeath dot org @ 2012-12-28 21:12 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #1 from Lorenz Hüdepohl <bugs at stellardeath dot org> 2012-12-28 21:12:28 UTC ---
Forgot the actual compiler output, this is of a self-compiled gcc (checked out
2012/12/22), see below for an 4.7.1:
#> gfortran -v -fimplicit-none -Wall -pedantic --std=f2003 -c ice.f90
Using built-in specs.
COLLECT_GCC=/home/lorenz/sys/bin/gfortran
Target: x86_64-unknown-linux-gnu
Configured with: ./configure --prefix=/home/lorenz/sys
Thread model: posix
gcc version 4.8.0 20121222 (experimental) (GCC)
COLLECT_GCC_OPTIONS='-v' '-fimplicit-none' '-Wall' '-Wpedantic' '-std=f2003'
'-c' '-mtune=generic' '-march=x86-64'
/home/lorenz/sys/lib/gcc/x86_64-unknown-linux-gnu/4.8.0/f951 ice.f90 -quiet
-dumpbase ice.f90 -mtune=generic -march=x86-64 -auxbase ice -Wall -Wpedantic
-std=f2003 -version -fimplicit-none -fintrinsic-modules-path
/home/lorenz/sys/lib64/gcc/x86_64-unknown-linux-gnu/4.8.0/finclude -o
/tmp/ccPNKtBE.s
GNU Fortran (GCC) version 4.8.0 20121222 (experimental)
(x86_64-unknown-linux-gnu)
compiled by GNU C version 4.8.0 20121222 (experimental), GMP version
5.0.5, MPFR version 3.1.0-p1, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
GNU Fortran (GCC) version 4.8.0 20121222 (experimental)
(x86_64-unknown-linux-gnu)
compiled by GNU C version 4.8.0 20121222 (experimental), GMP version
5.0.5, MPFR version 3.1.0-p1, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
ice.f90:11.42:
function tostring(handle) result(string)
1
Warning: Unused variable 'string' declared at (1)
ice.f90:11.42:
function tostring(handle) result(string)
1
Warning: Return value 'string' of function 'tostring' declared at (1) not set
ice.f90: In function ‘dies_here’:
ice.f90:23:0: internal compiler error: Segmentation fault
write(*,*) tostring(handle)
^
0x95f94f crash_signal
../.././gcc/toplev.c:334
0x51a7b1 gfc_fix_class_refs(gfc_expr*)
../.././gcc/fortran/class.c:168
0x5ea5bb gfc_conv_expr(gfc_se*, gfc_expr*)
../.././gcc/fortran/trans-expr.c:6224
0x5ebe5a gfc_apply_interface_mapping(gfc_interface_mapping*, gfc_se*,
gfc_expr*)
../.././gcc/fortran/trans-expr.c:3390
0x5e82f9 gfc_conv_procedure_call(gfc_se*, gfc_symbol*, gfc_actual_arglist*,
gfc_expr*, vec<tree_node*, va_gc, vl_embed>*)
../.././gcc/fortran/trans-expr.c:4855
0x5ea12d gfc_conv_function_expr
../.././gcc/fortran/trans-expr.c:5543
0x5eadfc gfc_conv_function_expr
../.././gcc/fortran/trans-expr.c:2194
0x5eadfc gfc_conv_expr(gfc_se*, gfc_expr*)
../.././gcc/fortran/trans-expr.c:6233
0x5ef01c gfc_conv_expr_reference(gfc_se*, gfc_expr*)
../.././gcc/fortran/trans-expr.c:6327
0x608f71 gfc_trans_transfer(gfc_code*)
../.././gcc/fortran/trans-io.c:2307
0x5b7e17 trans_code
../.././gcc/fortran/trans.c:1516
0x606c4e build_dt
../.././gcc/fortran/trans-io.c:1831
0x5b7e37 trans_code
../.././gcc/fortran/trans.c:1488
0x5de70e gfc_generate_function_code(gfc_namespace*)
../.././gcc/fortran/trans-decl.c:5385
0x5b85e1 gfc_generate_module_code(gfc_namespace*)
../.././gcc/fortran/trans.c:1646
0x577d8b translate_all_program_units
../.././gcc/fortran/parse.c:4452
0x577d8b gfc_parse_file()
../.././gcc/fortran/parse.c:4679
0x5b3815 gfc_be_parse_file
../.././gcc/fortran/f95-lang.c:191
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
Also tested with gfortran 4.7.1 that comes with openSUSE:
> gfortran -v -c ice.f90
Using built-in specs.
COLLECT_GCC=gfortran
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
--mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada
--enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.7
--enable-ssp --disable-libssp --disable-libitm --disable-plugin
--with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux'
--disable-libgcj --disable-libmudflap --with-slibdir=/lib64 --with-system-zlib
--enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch
--enable-version-specific-runtime-libs --enable-linker-build-id
--program-suffix=-4.7 --enable-linux-futex --without-system-libunwind
--with-arch-32=i586 --with-tune=generic --build=x86_64-suse-linux
Thread model: posix
gcc version 4.7.1 20120723 [gcc-4_7-branch revision 189773] (SUSE Linux)
COLLECT_GCC_OPTIONS='-v' '-c' '-mtune=generic' '-march=x86-64'
/usr/lib64/gcc/x86_64-suse-linux/4.7/f951 ice.f90 -quiet -dumpbase ice.f90
-mtune=generic -march=x86-64 -auxbase ice -version -fintrinsic-modules-path
/usr/lib64/gcc/x86_64-suse-linux/4.7/finclude -o /tmp/cccbHXIz.s
GNU Fortran (SUSE Linux) version 4.7.1 20120723 [gcc-4_7-branch revision
189773] (x86_64-suse-linux)
compiled by GNU C version 4.7.1 20120723 [gcc-4_7-branch revision
189773], GMP version 5.0.5, MPFR version 3.1.0-p1, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU Fortran (SUSE Linux) version 4.7.1 20120723 [gcc-4_7-branch revision
189773] (x86_64-suse-linux)
compiled by GNU C version 4.7.1 20120723 [gcc-4_7-branch revision
189773], GMP version 5.0.5, MPFR version 3.1.0-p1, MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ice.f90: In function ‘dies_here’:
ice.f90:23:0: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugs.opensuse.org/> for instructions.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
2012-12-28 21:12 ` [Bug fortran/55827] " bugs at stellardeath dot org
@ 2012-12-28 22:03 ` kargl at gcc dot gnu.org
2012-12-28 22:41 ` mikael at gcc dot gnu.org
` (10 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: kargl at gcc dot gnu.org @ 2012-12-28 22:03 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
kargl at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-12-28
CC| |kargl at gcc dot gnu.org
Ever Confirmed|0 |1
Known to fail| |4.2.5, 4.3.6, 4.4.7, 4.5.4,
| |4.6.4, 4.7.2, 4.8.0
--- Comment #2 from kargl at gcc dot gnu.org 2012-12-28 22:02:43 UTC ---
Here's a possible patch against trunk. I'm not
familiar with the internals for CLASS, so the
change to class.c may need some additional work.
Index: class.c
===================================================================
--- class.c (revision 194745)
+++ class.c (working copy)
@@ -162,7 +162,8 @@ gfc_fix_class_refs (gfc_expr *e)
if ((e->expr_type != EXPR_VARIABLE
&& e->expr_type != EXPR_FUNCTION)
|| (e->expr_type == EXPR_FUNCTION
- && e->value.function.isym != NULL))
+ && e->value.function.isym != NULL)
+ || e->symtree == NULL)
return;
ts = &e->symtree->n.sym->ts;
Index: trans-expr.c
===================================================================
--- trans-expr.c (revision 194745)
+++ trans-expr.c (working copy)
@@ -5527,7 +5527,7 @@ gfc_conv_function_expr (gfc_se * se, gfc
/* We distinguish statement functions from general functions to improve
runtime performance. */
- if (expr->symtree->n.sym->attr.proc == PROC_ST_FUNCTION)
+ if (expr->symtree && expr->symtree->n.sym->attr.proc == PROC_ST_FUNCTION)
{
gfc_conv_statement_function (se, expr);
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
2012-12-28 21:12 ` [Bug fortran/55827] " bugs at stellardeath dot org
2012-12-28 22:03 ` kargl at gcc dot gnu.org
@ 2012-12-28 22:41 ` mikael at gcc dot gnu.org
2012-12-29 0:26 ` sgk at troutmask dot apl.washington.edu
` (9 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2012-12-28 22:41 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mikael at gcc dot gnu.org
--- Comment #3 from Mikael Morin <mikael at gcc dot gnu.org> 2012-12-28 22:41:22 UTC ---
(In reply to comment #2)
> Here's a possible patch against trunk.
Hum, it doesn't look right to allow unnamed (symtree == NULL) functions.
Here is another possible patch. Basically untested.
diff --git a/module.c b/module.c
index cde5739..af908ac 100644
--- a/module.c
+++ b/module.c
@@ -4532,7 +4532,7 @@ read_module (void)
char name[GFC_MAX_SYMBOL_LEN + 1];
int i;
int ambiguous, j, nuse, symbol;
- pointer_info *info, *q;
+ pointer_info *info;
gfc_use_rename *u = NULL;
gfc_symtree *st;
gfc_symbol *sym;
@@ -4595,8 +4595,7 @@ read_module (void)
/* Some symbols do not have a namespace (eg. formal arguments),
so the automatic "unique symtree" mechanism must be suppressed
by marking them as referenced. */
- q = get_integer (info->u.rsym.ns);
- if (q->u.pointer == NULL)
+ if (info->u.rsym.ns == 0)
{
info->u.rsym.referenced = 1;
continue;
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (2 preceding siblings ...)
2012-12-28 22:41 ` mikael at gcc dot gnu.org
@ 2012-12-29 0:26 ` sgk at troutmask dot apl.washington.edu
2012-12-29 16:05 ` sgk at troutmask dot apl.washington.edu
` (8 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: sgk at troutmask dot apl.washington.edu @ 2012-12-29 0:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #4 from Steve Kargl <sgk at troutmask dot apl.washington.edu> 2012-12-29 00:25:33 UTC ---
On Fri, Dec 28, 2012 at 10:41:22PM +0000, mikael at gcc dot gnu.org wrote:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
>
> Mikael Morin <mikael at gcc dot gnu.org> changed:
>
> What |Removed |Added
> ----------------------------------------------------------------------------
> CC| |mikael at gcc dot gnu.org
>
> --- Comment #3 from Mikael Morin <mikael at gcc dot gnu.org> 2012-12-28 22:41:22 UTC ---
> (In reply to comment #2)
> > Here's a possible patch against trunk.
>
> Hum, it doesn't look right to allow unnamed (symtree == NULL) functions.
> Here is another possible patch. Basically untested.
>
Hi Mikael,
I tested your patch. While it fixes the issue in this PR,
it causes a regression with used_dummy_types_7.f90. I
haven't tried to traced down the problem other than a quick
gdb session.
Program received signal SIGSEGV, Segmentation fault.
0x0000000000532112 in gfc_insert_bbt (root=0x0, new_node=0x202806cd0,
compare=0x5c2a70 <compare_symtree(void*, void*)>)
at ../../gcc4x/gcc/fortran/bbt.c:138
138 *r = insert (n, *r, compare);
(gdb) bt
#0 0x0000000000532112 in gfc_insert_bbt (root=0x0, new_node=0x202806cd0,
compare=0x5c2a70 <compare_symtree(void*, void*)>)
at ../../gcc4x/gcc/fortran/bbt.c:138
#1 0x00000000005c52fa in gfc_new_symtree (root=root@entry=0x0,
name=name@entry=0x7fffffffcd80 "@5")
at ../../gcc4x/gcc/fortran/symbol.c:2403
#2 0x00000000005c53e1 in gfc_get_unique_symtree (ns=0x0)
at ../../gcc4x/gcc/fortran/symbol.c:2455
#3 0x0000000000585de7 in read_cleanup (p=0x202898700)
at ../../gcc4x/gcc/fortran/module.c:4461
#4 0x0000000000585d8e in read_cleanup (p=0x202898680)
at ../../gcc4x/gcc/fortran/module.c:4450
#5 0x0000000000585d85 in read_cleanup (p=0x202898780)
at ../../gcc4x/gcc/fortran/module.c:4449
#6 0x000000000058b894 in read_module ()
at ../../gcc4x/gcc/fortran/module.c:4821
#7 0x000000000058bd15 in gfc_use_module (module=module@entry=0x202806970)
at ../../gcc4x/gcc/fortran/module.c:6249
#8 0x000000000058ce19 in gfc_use_modules ()
at ../../gcc4x/gcc/fortran/module.c:6372
#9 0x0000000000591bb8 in use_modules () at ../../gcc4x/gcc/fortran/parse.c:88
#10 0x0000000000592b95 in decode_statement ()
at ../../gcc4x/gcc/fortran/parse.c:302
#11 0x0000000000593e95 in next_free () at ../../gcc4x/gcc/fortran/parse.c:779
#12 next_statement () at ../../gcc4x/gcc/fortran/parse.c:972
#13 0x0000000000594d4e in parse_spec (st=<optimized out>, st@entry=ST_NONE)
at ../../gcc4x/gcc/fortran/parse.c:2740
#14 0x00000000005952ab in parse_interface ()
at ../../gcc4x/gcc/fortran/parse.c:2461
#15 parse_spec (st=ST_INTERFACE, st@entry=ST_NONE)
at ../../gcc4x/gcc/fortran/parse.c:2698
#16 0x0000000000597b6d in parse_module ()
at ../../gcc4x/gcc/fortran/parse.c:4307
#17 gfc_parse_file () at ../../gcc4x/gcc/fortran/parse.c:4584
#18 0x00000000005d2e86 in gfc_be_parse_file ()
at ../../gcc4x/gcc/fortran/f95-lang.c:191
#19 0x000000000097db06 in compile_file () at ../../gcc4x/gcc/toplev.c:545
#20 0x000000000097f8ad in do_compile () at ../../gcc4x/gcc/toplev.c:1878
#21 toplev_main (argc=2, argv=0x7fffffffd4f0) at ../../gcc4x/gcc/toplev.c:1954
#22 0x000000000052b60f in _start ()
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (3 preceding siblings ...)
2012-12-29 0:26 ` sgk at troutmask dot apl.washington.edu
@ 2012-12-29 16:05 ` sgk at troutmask dot apl.washington.edu
2012-12-29 16:40 ` mikael at gcc dot gnu.org
` (7 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: sgk at troutmask dot apl.washington.edu @ 2012-12-29 16:05 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #5 from Steve Kargl <sgk at troutmask dot apl.washington.edu> 2012-12-29 16:04:45 UTC ---
On Fri, Dec 28, 2012 at 10:02:43PM +0000, kargl at gcc dot gnu.org wrote:
>
> Index: class.c
> ===================================================================
> --- class.c (revision 194745)
> +++ class.c (working copy)
> @@ -162,7 +162,8 @@ gfc_fix_class_refs (gfc_expr *e)
> if ((e->expr_type != EXPR_VARIABLE
> && e->expr_type != EXPR_FUNCTION)
> || (e->expr_type == EXPR_FUNCTION
> - && e->value.function.isym != NULL))
> + && e->value.function.isym != NULL)
> + || e->symtree == NULL)
> return;
>
> ts = &e->symtree->n.sym->ts;
> Index: trans-expr.c
> ===================================================================
> --- trans-expr.c (revision 194745)
> +++ trans-expr.c (working copy)
> @@ -5527,7 +5527,7 @@ gfc_conv_function_expr (gfc_se * se, gfc
>
> /* We distinguish statement functions from general functions to improve
> runtime performance. */
> - if (expr->symtree->n.sym->attr.proc == PROC_ST_FUNCTION)
> + if (expr->symtree && expr->symtree->n.sym->attr.proc == PROC_ST_FUNCTION)
> {
> gfc_conv_statement_function (se, expr);
>
Although I agree with Mikael that gfortran should probably
not have a NULL symtree by the time we reach gfc_conv_function_expr,
the above patch regression tests cleanly.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (4 preceding siblings ...)
2012-12-29 16:05 ` sgk at troutmask dot apl.washington.edu
@ 2012-12-29 16:40 ` mikael at gcc dot gnu.org
2013-01-01 19:14 ` mikael at gcc dot gnu.org
` (6 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2012-12-29 16:40 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #6 from Mikael Morin <mikael at gcc dot gnu.org> 2012-12-29 16:40:07 UTC ---
(In reply to comment #5)
> Although I agree with Mikael that gfortran should probably
> not have a NULL symtree by the time we reach gfc_conv_function_expr,
> the above patch regression tests cleanly.
Indeed, it's probably not that bad actually, as value.function.esym is properly
set, despite symtree being NULL.
Regarding:
(In reply to comment #2)
> I'm not
> familiar with the internals for CLASS, so the
> change to class.c may need some additional work.
>
That change is certainly OK:
If e->symtree == NULL, it doesn't make sense to have subreferences (e->ref ==
NULL), so the function reduces to a no-op.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (5 preceding siblings ...)
2012-12-29 16:40 ` mikael at gcc dot gnu.org
@ 2013-01-01 19:14 ` mikael at gcc dot gnu.org
2013-01-05 13:26 ` mikael at gcc dot gnu.org
` (5 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-01 19:14 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot |mikael at gcc dot gnu.org
|gnu.org |
--- Comment #7 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-01 19:14:17 UTC ---
(In reply to comment #5)
> Although I agree with Mikael that gfortran should probably
> not have a NULL symtree by the time we reach gfc_conv_function_expr,
> the above patch regression tests cleanly.
I will submit something inspired by your comment #2. It looks rock solid.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (6 preceding siblings ...)
2013-01-01 19:14 ` mikael at gcc dot gnu.org
@ 2013-01-05 13:26 ` mikael at gcc dot gnu.org
2013-01-07 17:57 ` mikael at gcc dot gnu.org
` (4 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-05 13:26 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #8 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-05 13:25:38 UTC ---
Author: mikael
Revision: 194928
Modified property: svn:log
Modified: svn:log at Sat Jan 5 13:25:32 2013
------------------------------------------------------------------------------
--- svn:log (original)
+++ svn:log Sat Jan 5 13:25:32 2013
@@ -1,6 +1,7 @@
2013-01-05 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
+ PR fortran/55827
* class.c (gfc_fix_class_refs): Adapt ts initialization for the case
e->symtree == NULL.
* trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it.
@@ -8,5 +9,6 @@
2013-01-05 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
+ PR fortran/55827
* gfortran.dg/use_22.f90: New test.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (7 preceding siblings ...)
2013-01-05 13:26 ` mikael at gcc dot gnu.org
@ 2013-01-07 17:57 ` mikael at gcc dot gnu.org
2013-01-07 18:11 ` mikael at gcc dot gnu.org
` (3 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-07 17:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #9 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-07 17:56:58 UTC ---
Author: mikael
Date: Mon Jan 7 17:56:53 2013
New Revision: 194985
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194985
Log:
2013-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
* class.c (gfc_fix_class_refs): Adapt ts initialization for the case
e->symtree == NULL.
* trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it.
2013-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
* gfortran.dg/use_22.f90: New test.
Added:
branches/gcc-4_7-branch/gcc/testsuite/gfortran.dg/use_22.f90
Modified:
branches/gcc-4_7-branch/gcc/fortran/ChangeLog
branches/gcc-4_7-branch/gcc/fortran/class.c
branches/gcc-4_7-branch/gcc/fortran/trans-expr.c
branches/gcc-4_7-branch/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (8 preceding siblings ...)
2013-01-07 17:57 ` mikael at gcc dot gnu.org
@ 2013-01-07 18:11 ` mikael at gcc dot gnu.org
2013-01-07 18:17 ` mikael at gcc dot gnu.org
` (2 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-07 18:11 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #10 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-07 18:10:52 UTC ---
Author: mikael
Date: Mon Jan 7 18:10:46 2013
New Revision: 194987
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194987
Log:
2013-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
* class.c (gfc_fix_class_refs): Adapt ts initialization for the case
e->symtree == NULL.
* trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it.
2013-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
* gfortran.dg/use_22.f90: New test.
Added:
branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/use_22.f90
Modified:
branches/gcc-4_6-branch/gcc/fortran/ChangeLog
branches/gcc-4_6-branch/gcc/fortran/trans-expr.c
branches/gcc-4_6-branch/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (9 preceding siblings ...)
2013-01-07 18:11 ` mikael at gcc dot gnu.org
@ 2013-01-07 18:17 ` mikael at gcc dot gnu.org
2013-01-07 18:19 ` mikael at gcc dot gnu.org
2013-01-07 22:04 ` mikael at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-07 18:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #11 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-07 18:16:33 UTC ---
(In reply to comment #10)
> Author: mikael
> Date: Mon Jan 7 18:10:46 2013
> New Revision: 194987
>
> URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=194987
> Log:
> 2013-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
> Mikael Morin <mikael@gcc.gnu.org>
>
> PR fortran/55827
> * class.c (gfc_fix_class_refs): Adapt ts initialization for the case
> e->symtree == NULL.
Err, that part is not in the 4.6 backport.
I will fix the Changelog.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (10 preceding siblings ...)
2013-01-07 18:17 ` mikael at gcc dot gnu.org
@ 2013-01-07 18:19 ` mikael at gcc dot gnu.org
2013-01-07 22:04 ` mikael at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-07 18:19 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
--- Comment #12 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-07 18:18:12 UTC ---
Author: mikael
Revision: 194987
Modified property: svn:log
Modified: svn:log at Mon Jan 7 18:18:03 2013
------------------------------------------------------------------------------
--- svn:log (original)
+++ svn:log Mon Jan 7 18:18:03 2013
@@ -2,8 +2,6 @@
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/55827
- * class.c (gfc_fix_class_refs): Adapt ts initialization for the case
- e->symtree == NULL.
* trans-expr.c (gfc_conv_function_expr): Init sym earlier. Use it.
2013-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug fortran/55827] ICE with multiple fortran modules and character lenght determined by an interfaced pure function
2012-12-28 21:08 [Bug fortran/55827] New: ICE with multiple fortran modules and character lenght determined by an interfaced pure function bugs at stellardeath dot org
` (11 preceding siblings ...)
2013-01-07 18:19 ` mikael at gcc dot gnu.org
@ 2013-01-07 22:04 ` mikael at gcc dot gnu.org
12 siblings, 0 replies; 14+ messages in thread
From: mikael at gcc dot gnu.org @ 2013-01-07 22:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55827
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #13 from Mikael Morin <mikael at gcc dot gnu.org> 2013-01-07 22:03:43 UTC ---
Fixed.
^ permalink raw reply [flat|nested] 14+ messages in thread