Thread overview | |||||
---|---|---|---|---|---|
|
March 26 [Issue 24454] Disallow initialization of non-static reference type data members by non-immutable values or rvalues | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=24454 Steven Schveighoffer <schveiguy@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |schveiguy@gmail.com --- Comment #1 from Steven Schveighoffer <schveiguy@gmail.com> --- case c2 seems fine to me. What is the problem with it? This seems akin to string interning. -- |
March 27 [Issue 24454] Disallow initialization of non-static reference type data members by non-immutable values or rvalues | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=24454 Nick Treleaven <nick@geany.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |nick@geany.org --- Comment #2 from Nick Treleaven <nick@geany.org> --- > static C static_c = new C(); // line 5 > static const C static_const_c = static_c; fieldrefinit.d(5): Error: variable `fieldrefinit.S.static_c` is a thread-local class and cannot have a static initializer. Use `static this()` to initialize instead. fieldrefinit.d(6): Error: static variable `static_c` cannot be read at compile time It compiles if static_c is made const/immutable, but then c3 is fine. The problem with c2 is issue 10376. I agree that c1 should not be allowed. -- |
March 27 [Issue 24454] Disallow initialization of non-static reference type data members by non-immutable values or rvalues | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=24454 --- Comment #3 from Nick Treleaven <nick@geany.org> --- > The problem with c2 is issue 10376 Sorry, that's not what's happending for c2. I also don't understand why c2 is bad. -- |
Copyright © 1999-2021 by the D Language Foundation