-
Notifications
You must be signed in to change notification settings - Fork 6.9k
conflict between gsl-lite and ms-gsl #39699
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
Comments
Both ports exists since 2017. |
Confirm that there is a header file conflict. |
This is an automated message. Per our repo policy, stale issues get closed if there has been no activity in the past 28 days. The issue will be automatically closed in 14 days. If you wish to keep this issue open, please add a new comment. |
Not stale. |
Maintainer of gsl-lite here. I am aware of this problem and plan to resolve this by renaming our namespace to The new namespace has already been available as opt-in for some time, cf. https://github.com/gsl-lite/gsl-lite?tab=readme-ov-file#using-gsl-lite-in-libraries, so if you use gsl-lite, please use version-1 defaults, include |
vcpkg is based on building from source and tracking source and configuration changes (via "ABI hashes"). Changing ABI is not so much an issue here. |
Thanks – I am familiar with Vcpkg, and of course you're right that ABI compatibility is not much of a concern here. But it may be for users of gsl-lite outside Vcpkg; we always have been very careful with breaking changes. The next major-version release will introduce several breaking changes (most of them through flipping the default for a configuration option, so everyone who already opted in to version-1 defaults should not notice a thing). I intend to take this opportunity to also introduce the inevitable ABI break. I acknowledge that this should have happened much sooner. One of the things that held me back from finally changing the namespace was that I sort of kept hoping for a resolution to isocpp/CppCoreGuidelines#1519. But after five years without reply I think we'd better follow our own judgement, even if that separates us from Rome forever. |
gsl-lite v1.0 migrated to namespace |
Uh oh!
There was an error while loading. Please reload this page.
Yes. Both
ms-gsl
andgsl-lite
define things under thegsl
namespace, which causes type conflicts and ODR violations.Originally posted by @wongjk in #39619 (comment)
The text was updated successfully, but these errors were encountered: