This generic type bound procedure reference has two or more specific procedures with the same type/rank/keyword signature.

This generic type bound procedure reference has two or more specific procedures with the same type/rank/keyword signature.

I am working with a list example in Intel Fortran on Windows (2013.0.089). However, the build halts with the following error:

1>X:\Fortran\Fortran2003\list_test\src\main.f90(30): error #8443: This generic type bound procedure reference has two or more specific procedures with the same type/rank/keyword signature.   [ADD]
1>compilation aborted for X:\Fortran\Fortran2003\list_test\src\main.f90 (code 1)

The project files are in the attached archive (same code for DPD200175597). Any thoughts?

Thanks.

AdjuntoTamaño
Descargar list-test.zip19.83 KB
publicaciones de 3 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.
Best Reply

The addValue binding in list (part of the add type bound generic) takes a class(*) second argument. A class(*) scalar dummy is type/kind/rank compatible with any scalar, so that argument is not distinguishable from the second arguments of the other add* bindings in that generic. So the compiler doesn't know which specific binding to pick when it see the reference to the generic in the main program. See 12.4.3.4.5 in F2008.

(I think the add* binding forms that take the intrinsic types are redundant anyway - all they do is just create a temporary allocatable object?)

Thanks for the help.

Deje un comentario

Por favor inicie sesión para agregar un comentario. ¿No es socio? Únase ya