szaghi / FLAP

Fortran command Line Arguments Parser for poor people
151 stars 34 forks source link

Intel compilation issues #44

Closed zbeekman closed 9 years ago

zbeekman commented 9 years ago

Hi Stefano, I hate to be the bearer of bad news, but while I was investigating the issue you were having with the default program name not being taken from $0 I was wondering if you were trying to use the Intel Compilers. On my home computer I only have access to the Beta 2016 release, which produces a run-time error (and a very strange one):

$ Test_Driver/Test_Driver
Test_Driver(80311,0x7fff772cf300) malloc: *** error for object 0x2: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

So this got me wondering what was happening so I tried to compile this on my work computer where we have the 13.1.0 20130121 version of the compiler and this fails to compile IR_Precision.F90 with the following errors:

Compiling IR_Precision.F90
src/IR_Precision.F90:927.2:

  pure function str_a_I1P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_i1p' at (1) cannot be pure
src/IR_Precision.F90:894.2:

  pure function str_a_I2P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_i2p' at (1) cannot be pure
src/IR_Precision.F90:861.2:

  pure function str_a_I4P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_i4p' at (1) cannot be pure
src/IR_Precision.F90:828.2:

  pure function str_a_I8P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_i8p' at (1) cannot be pure
src/IR_Precision.F90:729.2:

  pure function str_a_R16P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_r16p' at (1) cannot be pure
src/IR_Precision.F90:795.2:

  pure function str_a_R4P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_r4p' at (1) cannot be pure
src/IR_Precision.F90:762.2:

  pure function str_a_R8P(no_sign,delimiters,n) result(str)
  1
Error: CHARACTER(*) function 'str_a_r8p' at (1) cannot be pure
make: *** [Test_Driver/obj/ir_precision.o] Error 1
szaghi commented 9 years ago

Today I have done a very quick tests (about few seconds...) with intel 15.x (for the new -- feature....seems to work!) without any particular problems. I am almost sure that IR_Precisiin module can be correctly compiked with intel 14.x. I think I never tested the 13.x version, but I remember success with 12.x. Tomorrow I hope to have few minutes duribg the lunch break for fixing this issue. Do not worry about bad news, you are the only (except me) testing FLAP, your issues are very welcome!

Thank you again!

szaghi commented 9 years ago

Hi @zbeekman

I have done a lot of tests with Intel 15.0.3, the only Intel Fortran Compiler that I can use now, and all seem work right (as gfortran). I am closing this issue, but feel free to reopen it if the problem persists.

zbeekman commented 9 years ago

:+1: