Bug 7498 – function expected before (), not <function>

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2012-02-13T16:47:00Z
Last change time
2012-02-14T00:30:36Z
Assigned to
nobody
Creator
ellery-newcomer

Comments

Comment #0 by ellery-newcomer — 2012-02-13T16:47:04Z
dmd 2.058 beta. the code: template Heap(){ template Inner(){ mixin template IndexMixin(){ void insert(SomeValue)(SomeValue value){ } } } } class MultiIndexContainer(Value, Args...){ alias Args[0] L0; alias L0.Inner!() M0; mixin M0.IndexMixin!() index0; class Index0{ void baburk(){ this.outer.index0.insert(1); } } } alias MultiIndexContainer!(int, Heap!()) C1; void main(){} the fireworks: multi_index.d(15): Error: function expected before (), not 'this.this.this.insert(SomeValue)'
Comment #1 by code — 2012-02-13T18:16:45Z
This compiles fine with 2.057.
Comment #2 by code — 2012-02-13T18:21:47Z
Comment #3 by bugzilla — 2012-02-14T00:23:35Z
Reduced test case: template IndexMixin(){ void insert(T)(T value){ } } class MultiIndexContainer{ mixin IndexMixin!() index0; class Index0{ void baburk(){ this.outer.index0.insert(1); } } }
Comment #4 by github-bugzilla — 2012-02-14T00:29:46Z