public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
@ 2021-09-22 17:42 gscfq@t-online.de
2021-09-22 17:42 ` [Bug fortran/102458] " gscfq@t-online.de
` (18 more replies)
0 siblings, 19 replies; 20+ messages in thread
From: gscfq@t-online.de @ 2021-09-22 17:42 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
Bug ID: 102458
Summary: ICE tree check: expected array_type, have pointer_type
in gfc_conv_array_initializer, at
fortran/trans-array.c:6136
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: gscfq@t-online.de
Target Milestone: ---
Affects versions down to at least r5 :
$ cat z1.f90
subroutine s
integer :: a(command_argument_count()) = 1
print *, a
end
$ gfortran-12-20210919 -c z1.f90
z1.f90:1:12:
1 | subroutine s
| 1
internal compiler error: tree check: expected array_type, have pointer_type in
gfc_conv_array_initializer, at fortran/trans-array.c:6136
0x6938d8 tree_check_failed(tree_node const*, char const*, int, char const*,
...)
../../gcc/tree.c:8689
0x7de241 tree_check(tree_node*, char const*, int, char const*, tree_code)
../../gcc/tree.h:3427
0x7de241 gfc_conv_array_initializer(tree_node*, gfc_expr*)
../../gcc/fortran/trans-array.c:6133
0x81f1b0 gfc_conv_initializer(gfc_expr*, gfc_typespec*, tree_node*, bool, bool,
bool)
../../gcc/fortran/trans-expr.c:8014
0x7ff6ca gfc_get_symbol_decl(gfc_symbol*)
../../gcc/fortran/trans-decl.c:1940
0x80324f generate_local_decl
../../gcc/fortran/trans-decl.c:5989
0x7b3592 do_traverse_symtree
../../gcc/fortran/symbol.c:4170
0x80479c generate_local_vars
../../gcc/fortran/trans-decl.c:6195
0x80479c gfc_generate_function_code(gfc_namespace*)
../../gcc/fortran/trans-decl.c:6854
0x77be66 translate_all_program_units
../../gcc/fortran/parse.c:6572
0x77be66 gfc_parse_file()
../../gcc/fortran/parse.c:6841
0x7c90df gfc_be_parse_file
../../gcc/fortran/f95-lang.c:216
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
@ 2021-09-22 17:42 ` gscfq@t-online.de
2021-09-22 19:07 ` anlauf at gcc dot gnu.org
` (17 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: gscfq@t-online.de @ 2021-09-22 17:42 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
G. Steinmetz <gscfq@t-online.de> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-invalid-code
--- Comment #1 from G. Steinmetz <gscfq@t-online.de> ---
There are several variants :
$ cat z3.f90
subroutine s
integer :: a(num_images()) = 1
print *, a
end
$ cat z4.f90
subroutine s
integer :: a(this_image()) = 1
print *, a
end
$ cat z7.f90
subroutine s
integer :: a(command_argument_count()) = 1
a = 2
end
$ cat z8.f90
program p
block
integer :: a(command_argument_count()) = 1
print *, a
end block
end
$ cat za.f90
function f()
integer :: a(command_argument_count()) = 0
a = 1
end
$ cat zb.f90
program p
block
integer :: n(command_argument_count()) = 0
n = 1
end block
end
$ gfortran-12-20210919 -c zb.f90
zb.f90:3:44:
3 | integer :: n(command_argument_count()) = 0
| 1
internal compiler error: in gfc_trans_auto_array_allocation, at
fortran/trans-array.c:6426
0x797a5b gfc_trans_auto_array_allocation(tree_node*, gfc_symbol*,
gfc_wrapped_block*)
../../gcc/fortran/trans-array.c:6426
0x7b1f17 gfc_trans_deferred_vars(gfc_symbol*, gfc_wrapped_block*)
../../gcc/fortran/trans-decl.c:4921
0x8054e1 gfc_trans_block_construct(gfc_code*)
../../gcc/fortran/trans-stmt.c:2311
0x78e4a7 trans_code
../../gcc/fortran/trans.c:2014
0x7b4c04 gfc_generate_function_code(gfc_namespace*)
../../gcc/fortran/trans-decl.c:6919
0x73af76 translate_all_program_units
../../gcc/fortran/parse.c:6572
0x73af76 gfc_parse_file()
../../gcc/fortran/parse.c:6841
0x78761f gfc_be_parse_file
../../gcc/fortran/f95-lang.c:216
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
2021-09-22 17:42 ` [Bug fortran/102458] " gscfq@t-online.de
@ 2021-09-22 19:07 ` anlauf at gcc dot gnu.org
2021-09-22 19:55 ` kargl at gcc dot gnu.org
` (16 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-22 19:07 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
anlauf at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |anlauf at gcc dot gnu.org
Last reconfirmed| |2021-09-22
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
--- Comment #2 from anlauf at gcc dot gnu.org ---
I think the problem is we consider command_argument_count() as a pure function,
so that gfc_is_constant_expr returns true.
As a consequence, is_non_constant_shape_array thinks that 'a' has constant
shape,
thus erroneously allowing the initialization.
We need a better concept of "constant"...
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
2021-09-22 17:42 ` [Bug fortran/102458] " gscfq@t-online.de
2021-09-22 19:07 ` anlauf at gcc dot gnu.org
@ 2021-09-22 19:55 ` kargl at gcc dot gnu.org
2021-09-22 20:01 ` anlauf at gcc dot gnu.org
` (15 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: kargl at gcc dot gnu.org @ 2021-09-22 19:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
kargl at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |kargl at gcc dot gnu.org
--- Comment #3 from kargl at gcc dot gnu.org ---
(In reply to anlauf from comment #2)
> I think the problem is we consider command_argument_count() as a pure
> function,
> so that gfc_is_constant_expr returns true.
Well, it is a pure function. Fortran 2018, page 327,
All standard intrinsic functions are pure.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (2 preceding siblings ...)
2021-09-22 19:55 ` kargl at gcc dot gnu.org
@ 2021-09-22 20:01 ` anlauf at gcc dot gnu.org
2021-09-22 20:03 ` kargl at gcc dot gnu.org
` (14 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-22 20:01 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #4 from anlauf at gcc dot gnu.org ---
(In reply to kargl from comment #3)
> Well, it is a pure function. Fortran 2018, page 327,
>
> All standard intrinsic functions are pure.
Of course you are correct. I wanted to express that in this context one
cannot interpret PURE == (compile time) constant.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (3 preceding siblings ...)
2021-09-22 20:01 ` anlauf at gcc dot gnu.org
@ 2021-09-22 20:03 ` kargl at gcc dot gnu.org
2021-09-22 20:43 ` anlauf at gcc dot gnu.org
` (13 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: kargl at gcc dot gnu.org @ 2021-09-22 20:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #5 from kargl at gcc dot gnu.org ---
(In reply to kargl from comment #3)
> (In reply to anlauf from comment #2)
> > I think the problem is we consider command_argument_count() as a pure
> > function,
> > so that gfc_is_constant_expr returns true.
>
> Well, it is a pure function. Fortran 2018, page 327,
>
> All standard intrinsic functions are pure.
I think we need to look at the specific function in gfc_is_constant_expr.
The Fortran standard has
10.1.12 Constant expression
A constant expression is an expression with limitations that make
it suitable for use as a kind type parameter, initializer, or named
constant. It is an expression in which each operation is intrinsic,
and each primary is
...
(5) a reference to an elemental standard intrinsic function, where
each argument is a constant expression,
(6) a reference to a standard intrinsic function that is
transformational, other than COMMAND_ARGUMENT_COUNT, GET_TEAM,
NULL, NUM_IMAGES, TEAM_NUMBER, THIS_IMAGE, or TRANSFER, where
each argument is a constant expression,
So, if I untangle (6), gfortran needs to reject the listed intrinsic
function except for TRANSFER where a different restrict applies.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (4 preceding siblings ...)
2021-09-22 20:03 ` kargl at gcc dot gnu.org
@ 2021-09-22 20:43 ` anlauf at gcc dot gnu.org
2021-09-22 21:17 ` anlauf at gcc dot gnu.org
` (12 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-22 20:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #6 from anlauf at gcc dot gnu.org ---
Created attachment 51497
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51497&action=edit
Patch
Thanks for the research, Steve.
The attached patch fixes the PR by excluding the listed functions.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (5 preceding siblings ...)
2021-09-22 20:43 ` anlauf at gcc dot gnu.org
@ 2021-09-22 21:17 ` anlauf at gcc dot gnu.org
2021-09-22 23:18 ` sgk at troutmask dot apl.washington.edu
` (11 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-22 21:17 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
anlauf at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #51497|0 |1
is obsolete| |
--- Comment #7 from anlauf at gcc dot gnu.org ---
Created attachment 51498
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51498&action=edit
Revised patch including testcase
This regtests ok and has the right logic.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (6 preceding siblings ...)
2021-09-22 21:17 ` anlauf at gcc dot gnu.org
@ 2021-09-22 23:18 ` sgk at troutmask dot apl.washington.edu
2021-09-23 19:28 ` anlauf at gcc dot gnu.org
` (10 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: sgk at troutmask dot apl.washington.edu @ 2021-09-22 23:18 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #8 from Steve Kargl <sgk at troutmask dot apl.washington.edu> ---
On Wed, Sep 22, 2021 at 09:17:18PM +0000, anlauf at gcc dot gnu.org wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
>
> anlauf at gcc dot gnu.org changed:
>
> What |Removed |Added
> ----------------------------------------------------------------------------
> Attachment #51497|0 |1
> is obsolete| |
>
> --- Comment #7 from anlauf at gcc dot gnu.org ---
> Created attachment 51498
> --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51498&action=edit
> Revised patch including testcase
>
I think TRANSFER needs to be handled differently.
>From the same section of the Fortran standard, TRANSFER is
rejected if the following does not apply.
(8) a reference to the intrinsic function TRANSFER where each
argument is a constant expression and each ultimate pointer
component of the SOURCE argument is disassociated,
So, one should be able to do something like
integer,parameter :: n = 4
integer,parameter :: x(transfer(n, n)) = 1
print *, x
end
which gfortran will give
% gfortran10 -o z a.f90
% ./z
1 1 1 1
If you remove TRANSFER from the patch, it looks good to me.
We can revisit TRANSFER when Gerhard breaks gfortran, again! ;-)
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (7 preceding siblings ...)
2021-09-22 23:18 ` sgk at troutmask dot apl.washington.edu
@ 2021-09-23 19:28 ` anlauf at gcc dot gnu.org
2021-09-23 19:52 ` anlauf at gcc dot gnu.org
` (9 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-23 19:28 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
anlauf at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Assignee|unassigned at gcc dot gnu.org |anlauf at gcc dot gnu.org
Status|NEW |ASSIGNED
--- Comment #9 from anlauf at gcc dot gnu.org ---
(In reply to Steve Kargl from comment #8)
> I think TRANSFER needs to be handled differently.
>
> From the same section of the Fortran standard, TRANSFER is
> rejected if the following does not apply.
>
> (8) a reference to the intrinsic function TRANSFER where each
> argument is a constant expression and each ultimate pointer
> component of the SOURCE argument is disassociated,
yeah, I did that for the final patch. Will submit soon.
> So, one should be able to do something like
>
> integer,parameter :: n = 4
> integer,parameter :: x(transfer(n, n)) = 1
> print *, x
> end
>
> which gfortran will give
>
> % gfortran10 -o z a.f90
> % ./z
> 1 1 1 1
This is less of an issue. We also currently fail on the following:
subroutine s4
integer, parameter :: n = 4
integer, parameter :: x(transfer(n, n)) = 1 ! legal
integer :: y(transfer(n, n)) = 2 ! legal
integer, parameter :: k = size (x) ! ok
integer, parameter :: m = size (y) ! fails, tracked separately
print *, k, x, y
if (k /= size (y)) stop 1
end
For some reason we do not simplify SIZE(y), and this reason lies elsewhere.
And it is not touch by my patch.
> If you remove TRANSFER from the patch, it looks good to me.
> We can revisit TRANSFER when Gerhard breaks gfortran, again! ;-)
I'll bet he does, but don't hold your breath?
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (8 preceding siblings ...)
2021-09-23 19:28 ` anlauf at gcc dot gnu.org
@ 2021-09-23 19:52 ` anlauf at gcc dot gnu.org
2021-09-24 17:11 ` cvs-commit at gcc dot gnu.org
` (8 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-23 19:52 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #10 from anlauf at gcc dot gnu.org ---
Submitted: https://gcc.gnu.org/pipermail/fortran/2021-September/056571.html
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (9 preceding siblings ...)
2021-09-23 19:52 ` anlauf at gcc dot gnu.org
@ 2021-09-24 17:11 ` cvs-commit at gcc dot gnu.org
2021-09-27 21:14 ` anlauf at gcc dot gnu.org
` (7 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-24 17:11 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #11 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Harald Anlauf <anlauf@gcc.gnu.org>:
https://gcc.gnu.org/g:84cccff60a978174271a30042bf7841d2ae436eb
commit r12-3884-g84cccff60a978174271a30042bf7841d2ae436eb
Author: Harald Anlauf <anlauf@gmx.de>
Date: Fri Sep 24 19:10:15 2021 +0200
Fortran - improve checking for intrinsics allowed in constant expressions
gcc/fortran/ChangeLog:
PR fortran/102458
* expr.c (is_non_constant_intrinsic): Check for intrinsics
excluded in constant expressions (F2018:10.1.2).
(gfc_is_constant_expr): Use that check.
gcc/testsuite/ChangeLog:
PR fortran/102458
* gfortran.dg/pr102458.f90: New test.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (10 preceding siblings ...)
2021-09-24 17:11 ` cvs-commit at gcc dot gnu.org
@ 2021-09-27 21:14 ` anlauf at gcc dot gnu.org
2021-09-29 19:22 ` anlauf at gcc dot gnu.org
` (6 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-27 21:14 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #12 from anlauf at gcc dot gnu.org ---
(In reply to anlauf from comment #9)
A tentative patch which fixes the remaining issue is posted here:
https://gcc.gnu.org/pipermail/fortran/2021-September/056584.html
in the hope to learn more about the frontend.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (11 preceding siblings ...)
2021-09-27 21:14 ` anlauf at gcc dot gnu.org
@ 2021-09-29 19:22 ` anlauf at gcc dot gnu.org
2021-09-30 18:29 ` cvs-commit at gcc dot gnu.org
` (5 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-09-29 19:22 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #13 from anlauf at gcc dot gnu.org ---
Corrected patch that addresses the remaining issue (for valid code):
https://gcc.gnu.org/pipermail/fortran/2021-September/056599.html
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (12 preceding siblings ...)
2021-09-29 19:22 ` anlauf at gcc dot gnu.org
@ 2021-09-30 18:29 ` cvs-commit at gcc dot gnu.org
2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
` (4 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-30 18:29 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #14 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Harald Anlauf <anlauf@gcc.gnu.org>:
https://gcc.gnu.org/g:b19bbfb1482505367dd19ae4ab1ea19e36802b6a
commit r12-3993-gb19bbfb1482505367dd19ae4ab1ea19e36802b6a
Author: Harald Anlauf <anlauf@gmx.de>
Date: Thu Sep 30 20:29:31 2021 +0200
Fortran: resolve expressions during SIZE simplification
gcc/fortran/ChangeLog:
PR fortran/102458
* simplify.c (simplify_size): Resolve expressions used in array
specifications so that SIZE can be simplified.
gcc/testsuite/ChangeLog:
PR fortran/102458
* gfortran.dg/pr102458b.f90: New test.
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (13 preceding siblings ...)
2021-09-30 18:29 ` cvs-commit at gcc dot gnu.org
@ 2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
` (3 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-03 19:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:
https://gcc.gnu.org/g:082b3588ee01399b93fe73acd2ac181ec2ee3536
commit r11-9064-g082b3588ee01399b93fe73acd2ac181ec2ee3536
Author: Harald Anlauf <anlauf@gmx.de>
Date: Fri Sep 24 19:10:15 2021 +0200
Fortran - improve checking for intrinsics allowed in constant expressions
gcc/fortran/ChangeLog:
PR fortran/102458
* expr.c (is_non_constant_intrinsic): Check for intrinsics
excluded in constant expressions (F2018:10.1.12).
(gfc_is_constant_expr): Use that check.
gcc/testsuite/ChangeLog:
PR fortran/102458
* gfortran.dg/pr102458.f90: New test.
(cherry picked from commit 84cccff60a978174271a30042bf7841d2ae436eb)
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (14 preceding siblings ...)
2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
@ 2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
` (2 subsequent siblings)
18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-03 19:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #16 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:
https://gcc.gnu.org/g:a3abacbaebc5583885600840cf2d968341be0275
commit r11-9065-ga3abacbaebc5583885600840cf2d968341be0275
Author: Harald Anlauf <anlauf@gmx.de>
Date: Thu Sep 30 20:29:31 2021 +0200
Fortran: resolve expressions during SIZE simplification
gcc/fortran/ChangeLog:
PR fortran/102458
* simplify.c (simplify_size): Resolve expressions used in array
specifications so that SIZE can be simplified.
gcc/testsuite/ChangeLog:
PR fortran/102458
* gfortran.dg/pr102458b.f90: New test.
(cherry picked from commit b19bbfb1482505367dd19ae4ab1ea19e36802b6a)
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (15 preceding siblings ...)
2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
@ 2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:53 ` anlauf at gcc dot gnu.org
18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-05 19:51 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #17 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:
https://gcc.gnu.org/g:4aabb9ac284fea307aa70bb8ae4bdce298461bc7
commit r10-10169-g4aabb9ac284fea307aa70bb8ae4bdce298461bc7
Author: Harald Anlauf <anlauf@gmx.de>
Date: Fri Sep 24 19:10:15 2021 +0200
Fortran - improve checking for intrinsics allowed in constant expressions
gcc/fortran/ChangeLog:
PR fortran/102458
* expr.c (is_non_constant_intrinsic): Check for intrinsics
excluded in constant expressions (F2018:10.1.12).
(gfc_is_constant_expr): Use that check.
gcc/testsuite/ChangeLog:
PR fortran/102458
* gfortran.dg/pr102458.f90: New test.
(cherry picked from commit 082b3588ee01399b93fe73acd2ac181ec2ee3536)
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (16 preceding siblings ...)
2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
@ 2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:53 ` anlauf at gcc dot gnu.org
18 siblings, 0 replies; 20+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-05 19:51 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
--- Comment #18 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Harald Anlauf
<anlauf@gcc.gnu.org>:
https://gcc.gnu.org/g:dea2e6c7b5af2ec620fd94d824f006440907a34d
commit r10-10170-gdea2e6c7b5af2ec620fd94d824f006440907a34d
Author: Harald Anlauf <anlauf@gmx.de>
Date: Thu Sep 30 20:29:31 2021 +0200
Fortran: resolve expressions during SIZE simplification
gcc/fortran/ChangeLog:
PR fortran/102458
* simplify.c (simplify_size): Resolve expressions used in array
specifications so that SIZE can be simplified.
gcc/testsuite/ChangeLog:
PR fortran/102458
* gfortran.dg/pr102458b.f90: New test.
(cherry picked from commit b19bbfb1482505367dd19ae4ab1ea19e36802b6a)
^ permalink raw reply [flat|nested] 20+ messages in thread
* [Bug fortran/102458] ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
` (17 preceding siblings ...)
2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
@ 2021-10-05 19:53 ` anlauf at gcc dot gnu.org
18 siblings, 0 replies; 20+ messages in thread
From: anlauf at gcc dot gnu.org @ 2021-10-05 19:53 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102458
anlauf at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |10.4
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #19 from anlauf at gcc dot gnu.org ---
Fixed on mainline and backported to 11- and 10-branch.
Probably too risky for 9-branch. Closing.
Thanks for the report!
^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2021-10-05 19:53 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-22 17:42 [Bug fortran/102458] New: ICE tree check: expected array_type, have pointer_type in gfc_conv_array_initializer, at fortran/trans-array.c:6136 gscfq@t-online.de
2021-09-22 17:42 ` [Bug fortran/102458] " gscfq@t-online.de
2021-09-22 19:07 ` anlauf at gcc dot gnu.org
2021-09-22 19:55 ` kargl at gcc dot gnu.org
2021-09-22 20:01 ` anlauf at gcc dot gnu.org
2021-09-22 20:03 ` kargl at gcc dot gnu.org
2021-09-22 20:43 ` anlauf at gcc dot gnu.org
2021-09-22 21:17 ` anlauf at gcc dot gnu.org
2021-09-22 23:18 ` sgk at troutmask dot apl.washington.edu
2021-09-23 19:28 ` anlauf at gcc dot gnu.org
2021-09-23 19:52 ` anlauf at gcc dot gnu.org
2021-09-24 17:11 ` cvs-commit at gcc dot gnu.org
2021-09-27 21:14 ` anlauf at gcc dot gnu.org
2021-09-29 19:22 ` anlauf at gcc dot gnu.org
2021-09-30 18:29 ` cvs-commit at gcc dot gnu.org
2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
2021-10-03 19:34 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:51 ` cvs-commit at gcc dot gnu.org
2021-10-05 19:53 ` anlauf at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).