Why is my code does not compile? (dmd 2.021 linux)
Bill Baxter
wbaxter at gmail.com
Fri Dec 12 12:55:25 PST 2008
On Sat, Dec 13, 2008 at 5:45 AM, Weed <resume755 at mail.ru> wrote:
>
> void main()
> {
> int i;
>
> ref int func()
> {
> return i;
> }
>
> func() = 4;
> }
>
> lval.d(5): found 'ref' instead of statement
> lval.d(10): no identifier for declarator func
> lval.d(11): unrecognized declaration
>
>
> but code like this compiles:
>
> ref int func()
> {
> int* i = new int;
> return *i;
> }
>
> void main()
> {
> func() = 4;
> }
>
Ref return values are a very new feature in D2. I suspect its just a
bug that they don't work on inner functions yet.
--bb
More information about the Digitalmars-d-learn
mailing list