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

ICE When Calling Type-Bound Procedure of Parameter

Ben3
Beginner
225 Views

Hi,
I'm getting an ICE when I try to call a type-bound procedure of a variable declared as a parameter:
[fortran]module test implicit none type :: test_type integer :: int contains procedure :: doSomething end type test_type type(test_type), parameter :: typeParameter = test_type(0) contains subroutine doSomething ( this ) class(test_type), intent(in) :: this end subroutine doSomething subroutine broken call typeParameter%doSomething ! This causes an ICE. end subroutine broken end module test[/fortran] If you remove the parameter declaration, e.g.
[fortran]type(test_type) :: typeParameter = test_type(0)[/fortran] it will compile fine.

My version of ifort:
[plain]C:\Program Files (x86)\Intel\Composer XE 2011 SP1>ifort Intel Visual Fortran Intel 64 Compiler XE for applications running on Intel 64, Version 12.1.4.325 Build 20120410 Copyright (C) 1985-2012 Intel Corporation. All rights reserved.[/plain] Cheers,
Ben

0 Kudos
3 Replies
Anonymous66
Valued Contributor I
225 Views
Hello Ben,

Thank you for reporting this Internal Compiler Error. I have escalated it to the developers.The issue number is DPD200232442. I post any updates on the issue to this thread.

Regards,
Annalee
Intel Developer Support
0 Kudos
Anonymous66
Valued Contributor I
225 Views
Hello Ben,

A fix has been found for this issue and we are currently planning to include it in the next major release. I will update this thread when the fix is available.

Regards,
Annalee
0 Kudos
Anonymous66
Valued Contributor I
225 Views
Hello Ben, This is issue has been fixed in Intel® Visual Fortran Composer XE for Windows* 2013 which is now available at the Intel® Registration Center. Regards, Annalee Intel Developer Support * Other names and brands may be claimed as the property of others.
0 Kudos
Reply