https://issues.dlang.org/show_bug.cgi?id=16130
Issue ID: 16130
Summary: Disallow class template constraints from appearing
after BaseClassList
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: enhancement
Priority: P1
Component: dmd
Assignee: [email protected]
Reporter: [email protected]
Currently, a Constraint is allowed both before and after the BaseClassList by
the grammar:
http://dlang.org/spec/template.html#ClassTemplateDeclaration
http://dlang.org/spec/template.html#InterfaceTemplateDeclaration
There is no purpose to the redundancy, and the 'after' syntax doesn't make much
sense. The grammar rules:
class Identifier TemplateParameters BaseClassListopt Constraintopt
AggregateBody
interface Identifier TemplateParameters BaseInterfaceList Constraint
AggregateBody
should be removed. I don't know how they ever got there in the first place.
--