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
Weird “P6M Merging GLOBAL symbols failed” issue #3011
Comments
|
Hi, Regardless of the outcome of this particular issue I think I'll rename the exceptions such that there is less risk of a name collision (e.g. I'll make the offending class here An additional thought was that perhaps the special casing of the |
|
It's been years since I implemented this, but I think we're just running into the limits of lexical symbol importing. In Perl 6, packages are actually nested. |
The X::IO class was causing a namespace collision with the similarly named class in the rakudo core. This came up in rakudo/rakudo#3011
|
Blocker label removed because it was fixed in the module and I think did have a similar problem in my code before. It's a weird issue, and it's interesting that the commit in question causes this. But I think I've seen the recommendation at some point to name your exceptions as My::Module::Name::X::Foo, so I wonder if starting your own classes/roles with X:: is common at all. Anyway, not a blocker for now unless someone has a good reason for it to be, but please feel free to discuss the issue further. |
|
I think it's the That is causing the problem, the naive expectation being that it is |
|
still an issue for me: |
|
Basically, the module has:
At the same time there's an X::IO role in core.
After 84b0e38 (bisected) there's now this error:
Previously the module worked fine.
IRC discussion: https://colabti.org/irclogger/irclogger_log/perl6-dev?date=2019-06-21#l143
See also #2498.
The text was updated successfully, but these errors were encountered: