https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102787

--- Comment #1 from anlauf at gcc dot gnu.org ---
Interesting.  Cannot reproduce on x86_64-pc-linux-gnu.

However, changing the testcase as follows:

program p
  integer, parameter :: a(1) = 2
! integer, parameter :: b(2) = reshape([3,4], -[a]) ! { dg-error "negative" }
  integer, parameter :: b(2) = reshape([3,4], - a ) ! { dg-error "negative" }
end

thus removing the array constructor, I get an error pointing to the wrong line:

reshape_shape_2a.f90:5:30:

    5 |   integer, parameter :: a(1) = 2
      |                              1
Error: 'shape' argument of 'reshape' intrinsic at (1) has negative element (-2)

which is (correctly) coming from gfc_check_reshape that shows up in your
backtrace.

Possibly several latent issues uncovered by the testcase.
Need to dig deeper.

Reply via email to