Fortran Compiler Fails With Assertion in type.cpp When a String Expression is Used With iso_c_binding (Doc ID 1514774.1)

Last updated on AUGUST 03, 2016

Applies to:

Oracle Solaris Studio - Version Sun Studio 12 Update 1 and later
Information in this document applies to any platform.
Sun Studio 12.1
Fortran 95 8.4

Symptoms


When using the Oracle Solaris Studio 12.1/F90 8.4 compiler, f90comp fails with an assertion and crashes.

f90comp: /net/spalko/export/home1/train_builds/ceres_Linux/120606.intel-Linux/intel-Linux/lang/f90/fe/srcme/compiler/ir/tables/type.cpp:1089: Assertion `kind >= (int)TypeKind::FIRST_CHAR_KIND && kind <= (int)TypeKind::MAX_CHAR_KIND' failed.
sunf90: Fatal error in f90comp: Aborted
OR
Assertion failed: kind >= (int)TypeKind::FIRST_CHAR_KIND && kind <= (int) TypeKind::MAX_CHAR_KIND, file /net/violet.sfbay/export/home1/train_builds/ceres_intel-S2/090603.intel-S2/int el-S2/lang/f90/fe/srcme/compiler/ir/tables/type.cpp, line 1089 f95: Fatal error in f90comp: Abort (core dumped)

The problem is specific to Sun Studio 12 Update 1, it cannot show up with Oracle Solaris Studio 12.2/f90 8.5 or newer.
On SPARC, the problem does not show up with -qoption f90comp=fenophoenix.

 

The problem might occur when string expressions are combined with iso_c_binding, like this:

 




Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms