-
Notifications
You must be signed in to change notification settings - Fork 260
[SUGGESTION] change to unique and shared in cpp2 namespace #685
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
This comment was marked as resolved.
This comment was marked as resolved.
it's clang 16 with libstdc++ and headers from gcc 12.3 ... and I have the change from static to inline for nonesuch imported, should I try to produce minimal code to reproduce the problem? |
I tried to minimize the example as much as possible still needs 2 modules, but at least I got it relatively short, I left both the cpp2 files and generated files, also the build.log file and added a build.sh to see the commands I used to build this. the relevant part from the build.log file P.S. I don't know, this might very well be a compiler issue with current modules, but since we plan to support them and the issue is present in one of the major compilers... |
|
I didn't use shared but I imagine the same thing would happen since it's declared the same |
This still happens with inline!? |
OK, reopening... my impression was that changing them to I'm not yet working on enabling full support for modules, until modules support appears and stabilizes in the major compilers. But I'm still happy to entertain suggestions for changes that would help this issue, especially if they would be an improvement anyway like Thanks! |
Any idea which would be closer to an acceptable solution? I tried and the namespace version seems to work... though it involves one extra character in total... |
This comment was marked as resolved.
This comment was marked as resolved.
Oh, so nothing changed cause they're in the cpp2 namespace? |
Seems like |
would you be opposed to just moving the stuff from instantiated structs into functions template template these just work, without inline, static or other tricks I realize this is a breaking change, I could also move them to a separate file just for your patches JohelEGP and build them as a separate module. |
Also make `unique`, `shared`, and `nonesuch` be `inline`, closes hsutter#685. And finally fix `token::to_string`'s default to never decorate, all callers passed `true` anyway except the one use in `parse_tree_printer::start(token)`.
They cause issues when being used with c++ modules ... yes, I know we're not supposed to talk about them yet... but they are supposed to be supported as first class citizens eventually.
Solutions include:
I'm just trying to pick on what the best path forward is, maybe it's too soon for the discusion and I understand that but some of these solutions change syntax a bit
The text was updated successfully, but these errors were encountered: