Thread overview | |||||
---|---|---|---|---|---|
|
November 01, 2004 scope of auto generated ctor | ||||
---|---|---|---|---|
| ||||
Hi, I found a small bug in gdc. // auto_gen_ctor.d class Base { this() {} } class Derived : Base { private: // constructor will be generate here, so it is private. } If I compile the above code and check symbol in the following way: gdc -c auto_gen_ctor.d nm auto_gen_ctor.o | grep _ctor I get the following result: 00000000 T _D8override4Base5_ctorFZC8override4Base 00000023 t _D8override7Derived5_ctorFZC8override7Derived I think 00000023 should be 'T' not 't'. This means that the constructor of Derived is private. So I cannot link the program if I use the constructor of Derived in another file. ------------------ shinichiro.h |
November 01, 2004 Re: scope of auto generated ctor | ||||
---|---|---|---|---|
| ||||
Posted in reply to shinichiro.h | shinichiro.h schrieb am Montag, 1. November 2004 09:38: > Hi, > > I found a small bug in gdc. > > // auto_gen_ctor.d > > class Base { > this() {} > } > class Derived : Base { > private: > // constructor will be generate here, so it is private. > } added to dstress as: svn://svn.kuehne.cn/dstress/run/constructor_04.d Thomas |
November 15, 2004 Re: scope of auto generated ctor | ||||
---|---|---|---|---|
| ||||
Posted in reply to shinichiro.h | shinichiro.h wrote:
> Hi,
>
> I found a small bug in gdc.
>
> // auto_gen_ctor.d
>
> class Base {
> this() {}
> }
> class Derived : Base {
> private:
> // constructor will be generate here, so it is private.
> }
>
> If I compile the above code and check symbol in the following way:
>
> gdc -c auto_gen_ctor.d
> nm auto_gen_ctor.o | grep _ctor
>
> I get the following result:
>
> 00000000 T _D8override4Base5_ctorFZC8override4Base
> 00000023 t _D8override7Derived5_ctorFZC8override7Derived
>
> I think 00000023 should be 'T' not 't'. This means that the
> constructor of Derived is private. So I cannot link the program if I
> use the constructor of Derived in another file.
>
> ------------------
> shinichiro.h
Thanks. I'm posting this in D.bugs since it will also affect DMD 0.106.
David
|
Copyright © 1999-2021 by the D Language Foundation