Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!
26732 Discussions

False-positive error from -check shape

Ben3
Beginner
154 Views

Hi,

This example code fails to compile with the latest compiler when -check shape is specified, however from what I can tell there's nothing wrong with it.

program test

  integer, dimension(3) :: model, mesh
  integer, dimension(1, 3) :: permutation

  model = 0
  permutation(1,:) = [1, 2, 2]
  mesh(:) = model(permutation(1,:))

end program test

Here's the output of the compile command:

[bjm900@gadi-login-03 bjm900]$ ifort --version
ifort (IFORT) 19.1.0.166 20191121
Copyright (C) 1985-2019 Intel Corporation.  All rights reserved.

[bjm900@gadi-login-03 bjm900]$ ifort -check shape test.f90 
test.f90(8): error #5581: Shape mismatch: The extent of dimension 1 of array MESH is 3 and the corresponding extent of array MODEL is 1
  mesh(:) = model(permutation(1,:))
------------^
compilation aborted for test.f90 (code 1)

Thanks,
Ben

0 Kudos
1 Reply
Ben3
Beginner
154 Views

Never mind -- one of our users reported this to me, so I reported it here after confirming. But I just found that they've also reported it here (https://software.intel.com/en-us/forums/intel-fortran-compiler/topic/843512).

Edit: support ticket lodged

Reply