Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

axpby! exported twice #46822

Closed
ctkelley opened this issue Sep 18, 2022 · 9 comments · Fixed by #46851
Closed

axpby! exported twice #46822

ctkelley opened this issue Sep 18, 2022 · 9 comments · Fixed by #46851
Labels

Comments

@ctkelley
Copy link

ctkelley commented Sep 18, 2022

Running CI on a package for 1.9-DEV. Seems that BLAS and LAPACK have
a conflict. Macbook M2 Air running latest OS.

               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.9.0-DEV.1396 (2022-09-18)
 _/ |\__'_|_|_|\__'_|  |  Commit f794bdd98b3 (0 days old master)
|__/                   |

julia> using LinearAlgebra

julia> using LinearAlgebra.BLAS

julia> using LinearAlgebra.LAPACK

julia> axpby!()
WARNING: both BLAS and LinearAlgebra export "axpby!"; uses of it in module Main must be qualified
ERROR: UndefVarError: axpby! not defined
Stacktrace:
 [1] top-level scope
   @ REPL[4]:1
@ViralBShah ViralBShah added the domain:linear algebra Linear algebra label Sep 18, 2022
@inkydragon
Copy link
Sponsor Member

LinearAlgebra.BLAS wraps the interface to the low level BLAS library via ccall.
LinearAlgebra is based on LinearAlgebra.BLAS and exporte more functions.
Therefore some functions are duplicated.

In fact LinearAlgebra.BLAS.axpby! and LinearAlgebra.axpby! are the same function.
Conflicts can be avoided by keeping the BLAS prefix.

@ctkelley
Copy link
Author

ctkelley commented Sep 19, 2022 via email

@ctkelley
Copy link
Author

The problem is also there on Intel MACs with v1.9.

Commit 6cd2a9df645 (20 days old master)

All is fine with 1.8.1

@fredrikekre
Copy link
Member

In fact LinearAlgebra.BLAS.axpby! and LinearAlgebra.axpby! are the same function.

I believe you meant they are not the same function. This is intentional (#44758) but it is unfortunate that it gives this name collision.

@ctkelley
Copy link
Author

ctkelley commented Sep 19, 2022

Seems that #44758 was pushed before 1.8.0 was released, so why am I getting the problem only with 1.9? Shouldn't this have also been trouble with 1.8?

@ctkelley
Copy link
Author

My package is passing CI with github actions for the nightly build. I get the problem only when I run CI locally. Any ideas why that should be the case?

@giordano
Copy link
Contributor

Seems that #44758 was pushed before 1.8.0 was released, so why am I getting the problem only with 1.9?

Version 1.8 was branched out in February: #44203

Shouldn't this have also been trouble with 1.8?

No.

@ctkelley
Copy link
Author

OK. This change will break a lot of things, not just for me.

@N5N3
Copy link
Member

N5N3 commented Sep 19, 2022

The best solution seems to be not export them from BLAS (just like BLAS.dot)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants