https://issues.dlang.org/show_bug.cgi?id=22154
Issue ID: 22154
Summary: Pure functions should be able to use only the address
of a global
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P1
Component: dmd
Assignee: [email protected]
Reporter: [email protected]
Consider:
__gshared int a;
pure int fun(int* x) {
if (x == &a) return 1;
return 42;
}
This does not compile. However, it does not depend on global modifiable state
because the address of a global is a runtime invariant.
--