Compiler error - why?

Compiler error - why?

aupper.for(12): error #8000:  There is a conflict between local interface block and external interface block.   [FYUPPR]

Code:

      program aupper
      IMPLICIT NONE
      INTERFACE
        FUNCTION FYUPPR(STRING) RESULT(FYUPPR_0)
          CHARACTER(*) :: STRING
          CHARACTER(LEN=LEN(STRING)) :: FYUPPR_0
        END FUNCTION FYUPPR
      END INTERFACE
      CHARACTER(256) :: carg

      call getarg(1,carg)
      carg = fyuppr(carg)
      END program aupper

      FUNCTION FYuppr (STRING)
      IMPLICIT NONE
      CHARACTER(LEN=*) STRING
      CHARACTER(LEN=LEN(STRING)) FYuppr
      FYuppr = STRING
      RETURN
      END FUNCTION FYuppr

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.

Which compiler version? Works for me with 13.0.1.

If building from within Visual Studio, do a Clean first (or a Rebuild), just in case left over interface checking modules are confusing things. If building from the command line delete any __genmod.mod files that might be hanging around.

Then go and do twenty push ups for not putting the function in a module.

We're still on 11.1... I did a clean, but still the same problem. Yes I know modules need to be weened into our old code...

Deje un comentario

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