This actual argument must be the name of a user subroutine or the name of intrinsic subroutine.

This actual argument must be the name of a user subroutine or the name of intrinsic subroutine.

milenko@milenkons:~/fcm10/bcg2$ ifort -c mvm.f90
mvm.f90(33): error #6636: This actual argument must be the name of a user subroutine or the name of intrinsic subroutine.   [MATVEC]
call bicgstab2 (okprint,l, n, x, rhs,matvec, nonzero, tol,typestop,mxmv, work, ldw, info)
-------------------------------------^
compilation aborted for mvm.f90 (code 1)

I have problem with external function,I am attaching the code.

Fichier attachéTaille
Télécharger mvm.f90567 octets
Télécharger m1.f908.18 Ko
Télécharger m2.f90365 octets
3 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.

The message is pretty clear to me. In m2, you declare matvec as a function that returns an array. But in bicgstab2, you call the matvec argument as a subroutine, which is a conflict. These need to be consistent.

Steve - Intel Developer Support

Thanks Steve,I will try to fix this.

Laisser un commentaire

Veuillez ouvrir une session pour ajouter un commentaire. Pas encore membre ? Rejoignez-nous dès aujourd’hui