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 /****************************************************************/