Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29386 Discussions

The compiler cooofd and died when it saw my bad code

IanH
Honored Contributor III
732 Views

Erroneous code ahead!

[fortran]MODULE Entities
  IMPLICIT NONE
 
  PRIVATE
 
  TYPE, PUBLIC :: EntityRef
    TYPE(EntityTable), POINTER :: table => NULL()
  END TYPE EntityRef
 
  TYPE, PUBLIC :: EntityTable
    TYPE(EntityTable), POINTER :: parent => NULL()
    INTEGER :: component_i_forgot_to_reference
  END TYPE EntityTable
CONTAINS
  SUBROUTINE WriteEntityRef(unit, ref)
    INTEGER, INTENT(IN) :: unit
    TYPE(EntityRef), INTENT(IN) :: ref
    !***************************************************************************
    WRITE (unit, "(I0)", ADVANCE='NO')  &
        ref%table   ! <-- BAD PROGRAMMER FORGOT COMPONENT.
  END SUBROUTINE WriteEntityRef
END MODULE Entities
[/fortran]

results in:

[plain]>ifort /check:all /warn:all /standard-semantics Entities.f90
Intel(R) Visual Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 14.0.0.103 Build 20130728
Copyright (C) 1985-2013 Intel Corporation.  All rights reserved.

fortcom: Fatal: There has been an internal compiler error (C00000FD).
compilation aborted for Entities.f90 (code 1)[/plain]

plus some head smacking when I realised what I'd done wrong, after preparing the above example.

0 Kudos
2 Replies
Heinz_B_Intel
Employee
732 Views

Hi Ian

I will investigate the issue. Thanks very much for the small test case

Heinz

0 Kudos
Heinz_B_Intel
Employee
732 Views

the problem has been reported already and got fixed internally a few days ago. Issue number is DPD200248140. The fix will be available in an update of compiler 14.0

0 Kudos
Reply