You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[100%] Built target lapacke_64_obj
[100%] Linking C shared library ../lib/liblapacke.so
/MyPkgBuild/lapack/src/lapack/LAPACKE/include/lapack.h:138:16: warning: type of ‘lsame_’ does not match original declaration [-Wlto-type-mismatch]
138 | lapack_logical LAPACK_lsame_base( const char* ca, const char* cb
| ^
/MyPkgBuild/lapack/src/lapack/LAPACKE/include/lapack.h:138:16: note: return value type mismatch
138 | lapack_logical LAPACK_lsame_base( const char* ca, const char* cb
| ^
/MyPkgBuild/lapack/src/lapack/LAPACKE/include/lapack.h:138:16: note: type ‘int32_t’ should match type ‘int64_t’
/MyPkgBuild/lapack/src/lapack/LAPACKE/include/lapack.h:138:16: note: ‘lsame_’ was previously declared here
/MyPkgBuild/lapack/src/lapack/LAPACKE/include/lapack.h:138:16: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used
[100%] Built target lapacke
This comes about because LAPACKE/include/lapack.h has the prototypes for LSAME after the ifdefs surrounding the exact type of lapack_logical (so it either returns an int32 or int64) but before the ifdef that defines the API_SUFFIX macros for adding the optional _64 postfix to the symbol name. (And accordingly only LAPACK_GLOBAL(lsame...) rather than LAPACK_GLOBAL_SUFFIX(lsame...) .)
This makes it look like somebody was undecided whether there should be a single LSAME handling string comparisons in both 32-bit and 64-bit index cases, or separate LSAME and LSAME_64 like for all other LAPACK functions.
With GCC 11.3.0
Build command:
The text was updated successfully, but these errors were encountered: