Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
1 View

Catastrophic Compiler error IFC 2017

I am getting a catastrophic compiler error using the IFC 2017 version.  Have never encountered this before.  I have been compiling the same code for years using IFC.  The 2015 version never gave this error.

matpro\fcph.for(63): catastrophic error: **Internal compiler error: internal abort** Please report this error along with the circumstances in which it occurred in a Software Problem Report.  Note: File and line given may not be explicit cause of this error.
compilation aborted for matpro\fcph.for (code 1)

   data c1u ,c2u ,c3u ,thu ,edu / 296.7d0, 2.43d-02, 8.745d07,
     +                                 535.285d0, 1.577d05 /
       data c1pu,c2pu,c3pu,thpu,edpu/ 347.4d0, 3.95d-04, 3.860d07,
     +                                 571.0d0, 1.967d05 /
       data c1gd,c2gd,c3gd,thgd,edgd/ 315.86d0, 4.044d-02 , 0.0d0,
     +                                348.0d0, 0.0d0/
      cp(c1,c2,c3,th,ed,t,fotmtl) =
     # c1*(th**2)*exp(th/t)/((t**2)*((exp(th/t)-1.d0)**2))+c2*t+
Line 63     # (fotmtl/2.d0)*(c3*ed/(8.314d0*(t**2)))*exp(-ed/(8.314d0*t))
      t = ftemp
      r = facmot
      tm = ftmelt
      fcomp = comp/100.0d0
      fcpmol = 503.0d0
c   fcpmol = specific heat

 

0 Kudos
16 Replies
Highlighted
Black Belt
1 View

If you are seeing a failure

If you are seeing a failure with the 2017 update 1 (why do people say "the" version when there are more than 1?) you might better follow the instructions. as you don't appear to have provided sufficient information.
 

0 Kudos
Highlighted
Beginner
1 View

I am installing the update

I am installing the update now.  I just got a email with the update link.

0 Kudos
Highlighted
1 View

If you still see a problem

If you still see a problem with Update 1, please provide a complete compilable source that reproduces the problem and tell us what command options you use for the compile.

Retired 12/31/2016
0 Kudos
Highlighted
Beginner
1 View

Still getting the

Still getting the catastrophic error

IFC Version 17.0.1.143 Build 20161005

 

Here is the command line for the compiler

ifort -nologo -c   -auto -Qansi_alias- -pad_source -traceback  -fltconsistency -fpconstant -nogen-interfaces -module:o  -Io -Ienvrl -Imatpro -Irelap -Iscdap  -Igraphics -object:envrl\aaetit.o (file to be compiled goes here)

0 Kudos
Highlighted
1 View

Ok, now we need the source

Ok, now we need the source file(s). A snippet is not sufficient.

Retired 12/31/2016
0 Kudos
Highlighted
1 View

Is that really the command? 

Is that really the command?  It looks like a combination of Windows and Linux.  Are you building for Intel Xeon Phi maybe?

                       --Lorri

0 Kudos
Highlighted
Beginner
1 View

Here are links to the two

Here are links to the two files used for compiling.

First one calls the second one.

http://www.relap.com/files/makeri

http://www.relap.com/files/makerip

0 Kudos
Highlighted
Black Belt
1 View

The two files in #8 are

The two files in #8 are pieces of Make scripts. What is needed, however, is the file with the source code that causes the compiler error.

0 Kudos
Highlighted
Beginner
1 View

Ok here is the file that the

Ok here is the file that the error is occuring in.

http://www.relap.com/files/fcph.ff

 

Line 51 is supposedly where the error is

0 Kudos
Highlighted
Black Belt
1 View

The -l.... options (those

The -l.... options (those that have lower-case L as the leading character) that you showed in #5 are superfluous when -c is also specified, because -c says 'compile, don't link' and all the -l options apply to linking.

On Windows, using the command

ifort /c /Qansi_alias /Qpad_source /traceback /fltconsistency /fpconstant /nogen-interfaces /module:o fcph.f

I found that the 17.0.1.143 compiler produced the corresponding .OBJ file with no error messages or ICE.

The line that you gave (Line 63) in #1 as the problem line is part of the declaration of an ASF (Arithmetic Statement Function, which is an "obsolescent" feature of the language -- F2008, B.2.4). The statement function declaration in the file that you linked to in #10 is in lines 49-51, so we are probably looking at different versions of the source file.

0 Kudos
Highlighted
Beginner
1 View

All of my sources files,.ff,

All of my sources files,.ff,  go through a pre-processor and are converted to .for., so the #1 comment is the .for file and the #10 comment is the .ff file.  That is why the difference in line numbers.

 

0 Kudos
Highlighted
Beginner
1 View

Any additional information on

Any additional information on this would be great.

0 Kudos
Highlighted
Black Belt
1 View

Quote:Brian A. wrote: Any

Brian A. wrote:
 Any additional information on this would be great.

An ICE (internal compiler error) is a generic name for all compiler errors that are detected at a stage when it is too late to issue a meaningful diagnosis of the error and take steps to recover from the error. I think that it is next to impossible to investigate the causes of such generic errors without having at least one source code that provokes the compiler into aborting with an ICE. You have provided only snippets of code and a link to a file which, when run through a preprocessor unknown to us, generates source code that causes the compiler to abort with an ICE. 

Please provide the source code that you actually run the compiler on, i.e., the output of the preprocessor. Your makefile probably saves the preprocessor output to a temporary Fortran source file, runs the compiler on it, and then deletes the temporary file. You have to do either (i) intercept the make process prior to the deletion of the temporary file and give us that source file, or (ii) provide the preprocessor and instructions (options, command line, etc.) to run the preprocessor on a .ff file and produce a .f (or .f90) file.

0 Kudos
Highlighted
Beginner
1 View

http://relap.com/files/fcph

http://relap.com/files/fcph.for

 

Ok here is the link to the pre-processed file.

Line 63 is where the error is supposedly from.

0 Kudos
Highlighted
Black Belt
1 View

Thanks, that completes the

Thanks, that completes the picture. I have prepared a simplified reproducer and reported the bug at https://software.intel.com/en-us/forums/intel-visual-fortran-compiler-for-windows/topic/702945 .

Here are two versions of a simple work-around: 

  1. In the declaration of the statement function cp, change the dummy argument fotmtl to something different from the name of the third dummy argument of the function fcph, OR
  2. Change the "2.d0" in the last line of the statement function to "2.0" or "2e0".

I note in passing that there are various instances of double precision constants in expressions containing single precision variables. Single precision variables are initialized with double precision constants in the DATA statement. The compiler can handle these, but the presence of "Dnn" suffixes may mislead a reader into believing that the entire calculation is being made in double precision or that double precision is required.

0 Kudos
Highlighted
1 View

Thanks to mecej4 for

Thanks to mecej4 for isolating the issue. Escalated as DPD200415852.

Retired 12/31/2016
0 Kudos