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

getting compiling error #8383 in IVF 17.0 but not in 12.0

bjdesa
New Contributor I
635 Views

The following code compiled just fine in version 12.0 but gives the following error message in IVF 17.0

error #8383: The dummy arguments of an overriding and overridden binding that correspond by position must have the same characteristics, except for the type of the passed object dummy arguments.   [ASSOCIATE]

I dont quite understand why is error off on line 25.

 

0 Kudos
6 Replies
bjdesa
New Contributor I
635 Views

How do you post code with line numbers?

0 Kudos
andrew_4619
Honored Contributor II
635 Views

The {} code icon on the toolbar , then select Fortran, then paste the source code in.

0 Kudos
IanH
Honored Contributor II
635 Views

The later compiler is better at finding errors in the code (and perhaps better at identifying the line number of the error).  The interfaces of the two procedures that are referenced by the associate bindings are

    subroutine associatePLSStoLCVG(self,other)
        class(PLSSInterface), intent(inout) :: self
        class(LCVGInterface), intent(inout) :: other
...

    subroutine associateLCVGtoPLSS(self,other)
        class(LCVGInterface), intent(inout) :: self
        class(PLSSInterface), intent(inout) :: other

The declarations of the `other` dummy argument are not the same!  As they do not correspond to the passed argument, the rules of the language (F2008 4.5.7.3p2) require that they be the same.

(The declarations of the `self` dummy argument differ only such that the type of the argument is the same as the type with the relevant binding, this is consistent with the rules of the language.)

 

0 Kudos
FortranFan
Honored Contributor II
635 Views

See excellent point by IanH in message# 4: perhaps you meant to use GENERIC bindings to your types - https://software.intel.com/en-us/node/678723 where with type extension, the generic interface gets extended.

0 Kudos
bjdesa
New Contributor I
635 Views

Is there a compiler option I could use to ignore this error for now?

0 Kudos
Steve_Lionel
Honored Contributor III
635 Views

No - you'll have to correct your code.

0 Kudos
Reply