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

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

milenko1976
Beginner
544 Views

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.

0 Kudos
2 Replies
Steven_L_Intel1
Employee
544 Views

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.

0 Kudos
milenko1976
Beginner
544 Views

Thanks Steve,I will try to fix this.

0 Kudos
Reply