D - bug: duplicated constructors
- Carlos Santander B. (23/23) Jul 27 2003 This code:
- Walter (5/28) Jul 28 2003 I'm not sure what the bug is, unless it's just an obscure error message!
-
Carlos Santander B.
(14/14)
Jul 28 2003
"Walter"
wrote in message - Walter (4/12) Jul 28 2003 an
This code: class A { this() {} private: this() {} this(int b) { a=b; } int a; } void main() { A x=new A(); } Gives this error: constructor this overloads A () and A () both match argument list for this. Personally, I was expecting something like duplicated constructor or something like that. Or at least I was expecting it to compile just fine since one of the two constructors is private. Right before posting I tried putting the class in a different module (because I remembered friendship and such) and I got the same error. ------------------------- Carlos Santander --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.504 / Virus Database: 302 - Release Date: 2003-07-24
Jul 27 2003
I'm not sure what the bug is, unless it's just an obscure error message! There are two constructors for A with the same argument list, so it is an error in the program. "Carlos Santander B." <carlos8294 msn.com> wrote in message news:bg240f$t26$1 digitaldaemon.com...This code: class A { this() {} private: this() {} this(int b) { a=b; } int a; } void main() { A x=new A(); } Gives this error: constructor this overloads A () and A () both match argument list for this. Personally, I was expecting something like duplicated constructor or something like that. Or at least I was expecting it to compile just fine since one of the two constructors is private. Right before posting I tried putting the class in a different module (because I remembered friendship and such) and I got the same error. ------------------------- Carlos Santander --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.504 / Virus Database: 302 - Release Date: 2003-07-24
Jul 28 2003
"Walter" <walter digitalmars.com> wrote in message news:bg40fp$2seq$1 digitaldaemon.com... | I'm not sure what the bug is, unless it's just an obscure error message! | There are two constructors for A with the same argument list, so it is an | error in the program. | I know it's an error in the program, but it shouldn't compile anyway. The compiler should complain, shouldn't it? ————————————————————————— Carlos Santander --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.504 / Virus Database: 302 - Release Date: 2003-07-24
Jul 28 2003
"Carlos Santander B." <carlos8294 msn.com> wrote in message news:bg44kp$30p3$1 digitaldaemon.com..."Walter" <walter digitalmars.com> wrote in message news:bg40fp$2seq$1 digitaldaemon.com... | I'm not sure what the bug is, unless it's just an obscure error message! | There are two constructors for A with the same argument list, so it isan| error in the program. | I know it's an error in the program, but it shouldn't compile anyway. The compiler should complain, shouldn't it?Yes, it should.
Jul 28 2003