Mercurial > projects > ldc
comparison dmd2/expression.h @ 865:5e5873d847f6
Add missing overrides for toConstExp to dmd2/expression.h. Fixes #156.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sat, 20 Dec 2008 09:15:31 +0100 |
parents | 340acf1535d0 |
children | 638d16625da2 |
comparison
equal
deleted
inserted
replaced
864:2025c9a24efd | 865:5e5873d847f6 |
---|---|
1078 Expression *buildArrayLoop(Arguments *fparams); | 1078 Expression *buildArrayLoop(Arguments *fparams); |
1079 | 1079 |
1080 int inlineCost(InlineCostState *ics); | 1080 int inlineCost(InlineCostState *ics); |
1081 Expression *doInline(InlineDoState *ids); | 1081 Expression *doInline(InlineDoState *ids); |
1082 Expression *inlineScan(InlineScanState *iss); | 1082 Expression *inlineScan(InlineScanState *iss); |
1083 | |
1084 // LDC | |
1085 virtual llvm::Constant *toConstElem(IRState *irs); | |
1083 }; | 1086 }; |
1084 | 1087 |
1085 struct ArrayLengthExp : UnaExp | 1088 struct ArrayLengthExp : UnaExp |
1086 { | 1089 { |
1087 ArrayLengthExp(Loc loc, Expression *e1); | 1090 ArrayLengthExp(Loc loc, Expression *e1); |
1152 Expression *interpret(InterState *istate); | 1155 Expression *interpret(InterState *istate); |
1153 Expression *doInline(InlineDoState *ids); | 1156 Expression *doInline(InlineDoState *ids); |
1154 void scanForNestedRef(Scope *sc); | 1157 void scanForNestedRef(Scope *sc); |
1155 | 1158 |
1156 elem *toElem(IRState *irs); | 1159 elem *toElem(IRState *irs); |
1160 | |
1161 // LDC | |
1162 virtual llvm::Constant *toConstElem(IRState *irs); | |
1157 }; | 1163 }; |
1158 | 1164 |
1159 /* For both i++ and i-- | 1165 /* For both i++ and i-- |
1160 */ | 1166 */ |
1161 struct PostExp : BinExp | 1167 struct PostExp : BinExp |
1563 GEPExp(Loc loc, Expression* e, Identifier* id, unsigned idx); | 1569 GEPExp(Loc loc, Expression* e, Identifier* id, unsigned idx); |
1564 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); | 1570 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); |
1565 Expression *toLvalue(Scope *sc, Expression *e); | 1571 Expression *toLvalue(Scope *sc, Expression *e); |
1566 | 1572 |
1567 elem *toElem(IRState *irs); | 1573 elem *toElem(IRState *irs); |
1574 llvm::Constant *toConstElem(IRState *irs); | |
1568 }; | 1575 }; |
1569 | 1576 |
1570 #endif | 1577 #endif |
1571 | 1578 |
1572 /****************************************************************/ | 1579 /****************************************************************/ |