[Issue 19592] New: Rule for SuperClass is wrong
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Jan 16 14:52:47 UTC 2019
https://issues.dlang.org/show_bug.cgi?id=19592
Issue ID: 19592
Summary: Rule for SuperClass is wrong
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P1
Component: dlang.org
Assignee: nobody at puremagic.com
Reporter: b2.temp at gmx.com
For this code
import std.meta;
class Base{}
alias Bases = AliasSeq!(Base);
class Derived : Bases[0] {}
- `Bases[0]` is a SuperClass [1]
- SuperClass wraps a BasicType [2]
- BasicType doesn't contain a rule allowing to index something in the way the
code does.
The only time it's allowed is when it uses a IdentifierList [3] but then it's
always followed by another, non optional IdentifierList:
Identifier [ AssignExpression ]. IdentifierList
`Bases[0]` can only be described with a Type, since the indexing followed by
nothing is a BasicType2X.
[1]: https://dlang.org/spec/class.html#SuperClass
[2]: https://dlang.org/spec/declaration.html#BasicType
[3]: https://dlang.org/spec/declaration.html#IdentifierList
[4]: https://dlang.org/spec/declaration.html#BasicType2X
--
More information about the Digitalmars-d-bugs
mailing list