digitalmars.D - Cannot instantiate a std.container.Array of a class with a init()
- Francesco Cattoglio (8/8) Mar 02 2015 Taken from
- Tobias Pankrath (6/15) Mar 02 2015 I consider both your type and the library buggy. The type because
- Francesco Cattoglio (2/3) Mar 02 2015 Will do!
- Meta (6/15) Mar 02 2015 It's kind of ridiculous that the compiler doesn't complain about
- H. S. Teoh via Digitalmars-d (7/23) Mar 02 2015 I say file the bug against the compiler, not the library. The compiler
- =?UTF-8?B?QWxpIMOHZWhyZWxp?= (4/7) Mar 02 2015 Existing issue:
- ketmar (2/17) Mar 02 2015 standard policy: "D is only for smarts".=
Taken from http://forum.dlang.org/thread/gjrbmskictrbcyeduqgu forum.dlang.org trying to instantiate an Array!MyClass fails with a rather obscure error message if the MyClass has a member function "void init()": http://dpaste.dzfl.pl/16d202b7124d Is this a std library bug, or should this be considered a mistake on the library user side to name a member function "init"?
Mar 02 2015
On Monday, 2 March 2015 at 15:46:28 UTC, Francesco Cattoglio wrote:Taken from http://forum.dlang.org/thread/gjrbmskictrbcyeduqgu forum.dlang.org trying to instantiate an Array!MyClass fails with a rather obscure error message if the MyClass has a member function "void init()": http://dpaste.dzfl.pl/16d202b7124d Is this a std library bug, or should this be considered a mistake on the library user side to name a member function "init"?I consider both your type and the library buggy. The type because .init is a property of every type with a special meaning, which is violated by your class. The library because it emits such a useful error message. Please file a bug report.
Mar 02 2015
On Monday, 2 March 2015 at 15:57:10 UTC, Tobias Pankrath wrote:Please file a bug report.Will do!
Mar 02 2015
On Monday, 2 March 2015 at 15:46:28 UTC, Francesco Cattoglio wrote:Taken from http://forum.dlang.org/thread/gjrbmskictrbcyeduqgu forum.dlang.org trying to instantiate an Array!MyClass fails with a rather obscure error message if the MyClass has a member function "void init()": http://dpaste.dzfl.pl/16d202b7124d Is this a std library bug, or should this be considered a mistake on the library user side to name a member function "init"?It's kind of ridiculous that the compiler doesn't complain about this, considering that defining an init member causes an error that you would have no idea how to fix unless you already knew about this issue.
Mar 02 2015
On Mon, Mar 02, 2015 at 04:26:40PM +0000, Meta via Digitalmars-d wrote:On Monday, 2 March 2015 at 15:46:28 UTC, Francesco Cattoglio wrote:I say file the bug against the compiler, not the library. The compiler should reject members named 'init' because .init already has a special meaning in the language. T -- Being able to learn is a great learning; being able to unlearn is a greater learning.Taken from http://forum.dlang.org/thread/gjrbmskictrbcyeduqgu forum.dlang.org trying to instantiate an Array!MyClass fails with a rather obscure error message if the MyClass has a member function "void init()": http://dpaste.dzfl.pl/16d202b7124d Is this a std library bug, or should this be considered a mistake on the library user side to name a member function "init"?It's kind of ridiculous that the compiler doesn't complain about this, considering that defining an init member causes an error that you would have no idea how to fix unless you already knew about this issue.
Mar 02 2015
On 03/02/2015 09:48 AM, H. S. Teoh via Digitalmars-d wrote:The compiler should reject members named 'init' because .init already has a special meaning in the language.Existing issue: https://issues.dlang.org/show_bug.cgi?id=12545 Ali
Mar 02 2015
On Mon, 02 Mar 2015 16:26:40 +0000, Meta wrote:On Monday, 2 March 2015 at 15:46:28 UTC, Francesco Cattoglio wrote:standard policy: "D is only for smarts".=Taken from http://forum.dlang.org/thread/gjrbmskictrbcyeduqgu forum.dlang.org trying to instantiate an Array!MyClass fails with a rather obscure error message if the MyClass has a member function "void init()": http://dpaste.dzfl.pl/16d202b7124d Is this a std library bug, or should this be considered a mistake on the library user side to name a member function "init"?=20 It's kind of ridiculous that the compiler doesn't complain about this, considering that defining an init member causes an error that you would have no idea how to fix unless you already knew about this issue.
Mar 02 2015