July 24, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #20 from bearophile_hugs@eml.cc 2011-07-24 05:51:32 PDT ---
This is accepted by DMD 2.054, but if it's not meaningful in D then I suggest to statically disallow it, as the other examples:


class Foo {}
class Bar : public Foo {}
void main() {}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
July 24, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #21 from Stewart Gordon <smjg@iname.com> 2011-07-24 07:38:37 PDT ---
(In reply to comment #20)
> This is accepted by DMD 2.054, but if it's not meaningful in D then I suggest to statically disallow it, as the other examples:
> 
> class Foo {}
> class Bar : public Foo {}
> void main() {}

There are no attributes as such in your example.  And I don't see anything that isn't meaningful.  So what do you mean?

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
July 24, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=3934


klickverbot <code@klickverbot.at> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |code@klickverbot.at


--- Comment #22 from klickverbot <code@klickverbot.at> 2011-07-24 07:42:16 PDT ---
(In reply to comment #21)
> (In reply to comment #20)
> > class Foo {}
> > class Bar : public Foo {}
> > void main() {}
> 
> There are no attributes as such in your example.  And I don't see anything that isn't meaningful.  So what do you mean?

I think bearophile is referring to the »public« protection attribute in the SuperClass. This is explicitly allowed by the grammar, but I don't know off hand if it actually has any effect in the current implementation, other than giving C++ programmers a wrong sense of coziness maybe. ;)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
July 24, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #23 from Stewart Gordon <smjg@iname.com> 2011-07-24 07:54:03 PDT ---
(In reply to comment #22)
> (In reply to comment #21)
>> (In reply to comment #20)
>>> class Foo {}
>>> class Bar : public Foo {}
>>> void main() {}
>> 
>> There are no attributes as such in your example.  And I don't see anything that isn't meaningful.  So what do you mean?
> 
> I think bearophile is referring to the »public« protection attribute in the SuperClass. This is explicitly allowed by the grammar, but I don't know off hand if it actually has any effect in the current implementation, other than giving C++ programmers a wrong sense of coziness maybe. ;)

Therein lies my point - it isn't an attribute as such, and it isn't meaningless.  It means the same as in C++, though it doesn't make sense to have the feature in D.  But this point is covered by issue 177.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
July 24, 2011
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #24 from kennytm@gmail.com 2011-07-24 09:09:15 PDT ---
(In reply to comment #20)
> This is accepted by DMD 2.054, but if it's not meaningful in D then I suggest to statically disallow it, as the other examples:
> 
> 
> class Foo {}
> class Bar : public Foo {}
> void main() {}

Bug 177, Bug 5299.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 08, 2012
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #25 from bearophile_hugs@eml.cc 2012-01-08 07:09:32 PST ---
By mleise on IRC #D:


struct Foo {
    void bar() const const const {}
}
void main() {}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 08, 2012
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #26 from bearophile_hugs@eml.cc 2012-01-08 07:22:14 PST ---
By mleise on IRC #D:


class Base {
    abstract void foo();
}
class Ext : Base {
    override void foo(); // override should require an implementation
}
void main() {}


If uncaught by the compiler this causes a linker error.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
September 08, 2012
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #27 from bearophile_hugs@eml.cc 2012-09-08 07:51:04 PDT ---
Found by Ellery Newcomer:

alias enum int e;
void main() {}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
October 07, 2012
http://d.puremagic.com/issues/show_bug.cgi?id=3934



--- Comment #28 from bearophile_hugs@eml.cc 2012-10-07 05:48:44 PDT ---
struct Foo {
    protected void bar() {}
}
void main() {}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
1 2 3
Next ›   Last »