[plain]Compiling with Intel Visual Fortran Compiler XE 12.1.1.258 [IA-32]... ifort /nologo /debug:full /Od /standard-semantics /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\\bin" "X:\Fortran\list_test\src\link.f90" ifort /nologo /debug:full /Od /standard-semantics /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\\bin" "X:\Fortran\list_test\src\list.f90" ifort /nologo /debug:full /Od /standard-semantics /warn:interfaces /module:"Debug\\" /object:"Debug\\" /Fd"Debug\vc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\\bin" "X:\Fortran\list_test\src\main.f90" X:\Fortran\list_test\src\main.f90(29): error #6404: This name does not have a type, and must have an explicit type. [#UNLPOLY] DO i = 1,10 ^ X:\Fortran\list_test\src\main.f90(34): catastrophic error: Internal Compiler Error: possible out of order or missing USE compilation aborted for X:\Fortran\list_test\src\main.f90 (code 1) [/plain]
The project files are in the attached archive. Any ideas?
Thanks.
链接已复制
Thanks.
Nathan,
Steve is snowed in at the moment so I will look at this. But it looks like an internal compiler error after a compiler error. Can you correct the error in your application? Do you still get the internal compiler error then? I will see if I can reproduce and then see if removing switches will give you a workaround but fixing it in the compiler will need to wait until a future release.
------
Wendy
If it is helpful, here is the error with the 12.0 Update 2 compiler:
Build started: Project: list_test, Configuration: Debug|Win32
Output
Compiling with Intel Visual Fortran Compiler XE 12.0.2.154 [IA-32]...
ifort /nologo /debug:full /Od /standard-semantics /warn:interfaces /module:"Debug\" /object:"Debug\" /Fd"Debug\vc90.pdb" /traceback /check:bounds /libs:static /threads /dbglibs /c /Qvc9 /Qlocation,link,"c:\Program Files\Microsoft Visual Studio 9.0\VC\\bin" "\\tsclient\C\Users\wadoerne\Documents\Windows Forum\97960\list_test\src\link.f90"
\\tsclient\C\Users\wadoerne\Documents\Windows Forum\97960\list_test\src\link.f90(79): error #5415: Feature not yet implemented: SOURCE=polymorphic_expression
allocate(constructor%thisValue, source=thisValue)
-------------------------------------------^
compilation aborted for \\tsclient\C\Users\wadoerne\Documents\Windows Forum\97960\list_test\src\link.f90 (code 1)
list_test - 2 error(s), 0 warning(s)
Wendy:
Thanks for taking up the cause.
I commented out the problem ALLOCATE line and recompiled it, but still got the "This name does not have a type, and must have an explicit type. [#UNLPOLY]" error.
This error isn't a show stopper for me in the short term. So, it'll be great if it can be fixed in the next release.
Thanks,Nathan
I have reproduced and reported to engineering and will update you here with any workarounds or when a compiler is fixed.
The tracking number is: DPD200175597
------
Wendy
This issue was fixed in the version 13 compiler. Since then, the compiler gives an error diagnostic instead of an internal error.
list.f90(53): error #8443: This generic type bound procedure reference has two or more specific procedures with the same type/rank/keyword signature. [ADD]
call this%add(v)
--------------^
Because the generic addValue has an unlimited polymorphic as the thisValue argument, it can accept ANY value.
This is what caused the diagnostic, the CALL my_list%add(i) can either be a call to addInteger or addValue.
