November 23, 2023 [Issue 24253] fn "is not accessible from module" with overload reflection regressed in v2.105 | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=24253 FeepingCreature <default_357-line@yahoo.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |default_357-line@yahoo.de --- Comment #1 from FeepingCreature <default_357-line@yahoo.de> --- Fwiw, that only ever worked "by coincidence" because the access check only checked for structs and classes, and typeof(null) is a nullptr_t, which is neither. I see what I did wrong in my PR, but I'm not sure that just putting the previous check back in is the way to go. It was always weird. Problem is that sema has a way to disable access check on a scope (SCOPE.noaccesscheck), but afterwards the __traits(child) just becomes `this_.fooImpl`, which is then rechecked in sema3 and fails access. I'd need a way to mark the *access itself*, ie. the DotExp, as "no access check". -- |
Copyright © 1999-2021 by the D Language Foundation