- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I received the following error:
ifort -qopenmp -c mod_transition.f90
mod_transition.f90: catastrophic error: **Internal compiler error: segmentation violation signal raised** 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 mod_transition.f90 (code 1)
Makefile:64: recipe for target 'mod_transition.o' failed
make: *** [mod_transition.o] Error 1
Using ifort/2017.1.132-GCC-6.3.0-2.27
I received the error after making some changes to the mod_transition.f90 file. But have since reverted to a previous commit which compiled fine, and the error still persists. I've found that compiling with the -g debug flag the error does not occur.
The problem also occurs if instead I use ifort/2017.1.132-GCC-5.4.0-2.26
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please provide the source file mod_transition.f90, and the sources of any modules that are USEd in mod_transition.f90.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the source files. I can see the following behavior with 17.0.2 on Windows 10-64. With any level of optimization other than /Od (i.e., no optimization), the compiler takes an excessively long time with mod_transition.f90 (e.g., 42.3 s with /Ot versus 1.9 s with /Od).
The ICE that you saw may or may not be related, but you could try compiling the problem source file with lower levels of optimization. You could also look into breaking up mod_transition.f90 into smaller pieces.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I notice that in mod_transition.f90 that all of your contained subroutines have no arguments. You can safely place each of these subroutines in separate source files. And if you desire, define the interfaces (with no arguments) in the data declaration section of mod_transition.f90.
Jim Dempsey
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
But please don't do that! Leave them in the module. I consider it bad practice to use interface blocks for Fortran routines, except in the few circumstances the language requires it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Kurt,
Thank you for the report. I tested with 17.0.3 and later versions of the compiler - no ICE.
7996$ ifort -c -qopenmp mod_transition.f90
7996$ ifort -V
Intel(R) Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 17.0.3.191 Build 20170404
Copyright (C) 1985-2017 Intel Corporation. All rights reserved.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page