HP MLIB User's Guide Vol. 1 7th Ed.

Chapter 1 Introduction to VECLIB 15
Accessing VECLIB
This file includes both entry points xerbla and xerbla_, and xerbla_ conflicts
with your XERBLA subroutine.
Use one of the following workarounds on PA-RISC if you are compiling your
own Fortran version of XERBLA:
Compile your XERBLA with +noppu. This implies that you also compile any
of your program that calls XERBLA with +noppu, and that you apply this
rule recursively.
Use f90 ALIAS directives:
% !$HP$ ALIAS xerbla='xerbla'
This prevents the compiler from postpending the underbar onto the entry
point and external references for XERBLA.
This problem is not confined to the XERBLA subroutine. It occurs on PA-RISC
when the following conditions are met:
Any subprogram with the same name as a user-visible MLIB subprogram is
compiled in your program with +ppu
Another MLIB subprogram used by your program also calls that
subprogram
Furthermore, the reverse can occur in the PA-RISC 32-bit libraries if you
compile with the +ppu compiler option.
Itanium processors
If you compile on Itanium using the compiler option +noppu your xerbla.o
object has an entry point xerbla (without the postpended underbar). However
the Itanium MLIB libraries were compiled with +ppu option (following the
default behavior described in Table 1-1) and the entry points without underbars
were added as synonyms to the entry points with underbars. Hence the various
MLIB Fortran source subprograms that call XERBLA reference them as
xerbla_. Therefore, your xerbla (without the postpended underbar) does not
satisfy the Fortran calls to XERBLA, so the linker accesses xerbla.o from the
library. This file contains both entry points xerbla and xerbla_, and xerbla
conflicts with your XERBLA subroutine.
Moreover, the various MLIB C source subprograms that call XERBLA still
reference them as xerbla (without the postpended underbar). It means that
both xerbla and xerbla_ entry points must be provided in your xerbla.o.
Use one of the following workarounds on Itanium if you are compiling your own
Fortran version of XERBLA:
Compile your Fortran source for XERBLA with +noppu and provide both
xerbla and xerbla_ entry points: