Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
Annonces
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
29285 Discussions

Bug? Strange error raised by `ifort -check shape`

Zaikun
Nouveau contributeur I
3 217 Visites

Hello!

 

I have encountered a strange error raised by `ifort -check shape` with `ifort (IFORT) 2021.2.0 20210228`. Here is a minimal working example.

! testshape.f90
program testshape
implicit none
integer :: a(1, 2)
a(:, 1:2) = a(:, 1:2) ! This line is OK. Benchmark for the erroneous line.
a(:, [1, 2]) = a(:, [1, 2]) ! Do nothing ..., but it triggers the error.
end program testshape

Name this code as `testshape.f90`, and then compile it. Here is what happens on my machine (Ubuntu 20.04).

```
$ ifort -check shape testshape.f90
testshape.f90(7): error #5581: Shape mismatch: The extent of dimension 1 of array A is 1 and the corresponding extent of array <RHS expression> is 2
a(:, [1, 2]) = a(:, [1, 2]) ! Do nothing ..., but it triggers the error.
^
compilation aborted for testshape.f90 (code 1)
```

If we remove `-check shape` or replace it with `-warn shape`, then everything works.

Did I misunderstand array indexing or miscalculate something in the code? Thank you for your attention.

Étiquettes (1)
0 Compliments
1 Solution
Devorah_H_Intel
Modérateur
2 454 Visites

The fix is coming in the next Intel Fortran Compiler release 2021.7

Voir la solution dans l'envoi d'origine

0 Compliments
7 Réponses
mecej4
Contributeur émérite III
3 079 Visites

Some characters in the code part of your post have disappeared. Please edit your post and display the code using the code button (click on ..., then on </>).

Zaikun
Nouveau contributeur I
3 043 Visites
0 Compliments
mecej4
Contributeur émérite III
2 991 Visites

The bug is not present in older versions of Ifort, such as 2013SP1 and 2016.0.8.

Zaikun
Nouveau contributeur I
2 985 Visites

> The bug is not present in older versions of Ifort, such as 2013SP1 and 2016.0.8.

Thank you for the verification. It seems that `-check shape` has not been available until 2018:

https://software.intel.com/content/www/us/en/develop/articles/array-shape-check-new-in-intel-fortran-compiler-190.html

Thank you.

0 Compliments
Zaikun
Nouveau contributeur I
2 910 Visites

Hello,@VidyalathaB_Intel ! Sorry to bother you, but I do believe this is a bug. Thanks. 

 

0 Compliments
Barbara_P_Intel
Employé
2 874 Visites

Thanks for reporting this. I filed a bug report on your behalf, CMPLRIL0-34245. I'll keep you posted on its progress to a fix.



0 Compliments
Devorah_H_Intel
Modérateur
2 455 Visites

The fix is coming in the next Intel Fortran Compiler release 2021.7

0 Compliments
Répondre