13.0 compiler bug: illegal ambiguous type bound generics not detected

13.0 compiler bug: illegal ambiguous type bound generics not detected

The 13.0 compiler fails to detect illegal ambiguous specific bindings for type bound generics.  A short example is attached illustrating the bug for the three types of generics: name, assignment, and operator.

附件尺寸
下载 intel-bug-20121013.f901.77 KB
4 帖子 / 0 全新
最新文章
如需更全面地了解编译器优化,请参阅优化注意事项

Thank you for small reproducer. I reported this to our Fortran Developers (internal tracking id noted below) for thier analysis and will you update the thread after I learn more.

(Internal tracking id: DPD200237442)
(Resolution Update on 09/08/2014): This defect is fixed in the Intel® Parallel Studio XE 2015 Initial Release (2015.0.090 - Linux)

The new Intel Parallel Studio XE 2015 release (Version 15.0.0.090 Build 20140723) now detects the illegal ambiguous bindings.

$ ifort -V
Intel(R) Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 15.0.0.090 Build 20140723
Copyright (C) 1985-2014 Intel Corporation.  All rights reserved.

$ ifort -c intel-bug-20121013.f90 -stand f08
intel-bug-20121013.f90(42): warning #8449: The type/rank/keyword signature for this specific procedure matches another specific procedure that shares the same generic binding name.   [FOO_PRINT]
  subroutine foo_print (this)
-------------^
intel-bug-20121013.f90(50): error #8437: The type/rank signature for the arguments of this specific subroutine matches another specific subroutine that shares the same ASSIGNMENT generic binding.   [FOO_COPY]
  subroutine foo_copy (lhs, rhs)
-------------^
compilation aborted for intel-bug-20121013.f90 (code 1)

 

Thanks for the update Kevin.

发表评论

登录添加评论。还不是成员?立即加入