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

Catastrophic error: **Internal compiler error: internal abort**



I have attached source for a simple program that returns an Internal Compiler Error with XE [Intel(R) 64]  due to  Line 310: HelloWorld3Ret = HelloWorld3(HelloWorld3Input). Comment this out, and build is fine. I am using this with Visual Studio 2010. I am trying to implement a callback function, internal to the main program, that calls procedure inside a C DLL that was loaded in the main program. I thought that scope of variables in the main program extended to internal functions such as the one I have? My understanding may be incorrect here, but with the Compiler Error, I am a little stuck. I am unable to attach the DLL, but could send it to you if that helps. 

I would appreciate your help here. Thanks!


0 Kudos
1 Reply

Just a quick check (I don't have a 12.x compiler readily available) the code as presented compiles and runs (I presume as expected - see below) with our current 17.0 release so it doesn't appear there is a coding issue. If we can reproduce the internal error then perhaps a work around can be found. I assume you are intentionally using this older 12.x compiler, but if you could upgrade, that is advised and would allow you to move forward.

$ ifort u724118.f90
Intel(R) Visual Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version Build 20161005
Copyright (C) 1985-2016 Intel Corporation.  All rights reserved.

Microsoft (R) Incremental Linker Version 14.00.23026.0
Copyright (C) Microsoft Corporation.  All rights reserved.


$ .\u724118.exe

Loading HelloWorld DLL

Value of handle returned = 0
Error while loading Hello World DLL: The specified module could not be found.

Format message failed for status 0000007E while loading Hello World DLL: error status = 0000007E