comparison dmd/expression.h @ 1630:44b145be2ef5

Merge dmd 1.056.
author Robert Clipsham <robert@octarineparrot.com>
date Sat, 06 Feb 2010 15:53:52 +0000
parents 8fa4ab3dcc88
children 40bd4a0d4870
comparison
equal deleted inserted replaced
1629:b07d683ba4d0 1630:44b145be2ef5
1 1
2 // Compiler implementation of the D programming language 2 // Compiler implementation of the D programming language
3 // Copyright (c) 1999-2009 by Digital Mars 3 // Copyright (c) 1999-2010 by Digital Mars
4 // All Rights Reserved 4 // All Rights Reserved
5 // written by Walter Bright 5 // written by Walter Bright
6 // http://www.digitalmars.com 6 // http://www.digitalmars.com
7 // License for redistribution is by either the Artistic License 7 // License for redistribution is by either the Artistic License
8 // in artistic.txt, or the GNU General Public License in gnu.txt. 8 // in artistic.txt, or the GNU General Public License in gnu.txt.
643 unsigned offset; 643 unsigned offset;
644 Module* m; // starting point for overload resolution 644 Module* m; // starting point for overload resolution
645 645
646 SymOffExp(Loc loc, Declaration *var, unsigned offset); 646 SymOffExp(Loc loc, Declaration *var, unsigned offset);
647 Expression *semantic(Scope *sc); 647 Expression *semantic(Scope *sc);
648 Expression *interpret(InterState *istate);
648 void checkEscape(); 649 void checkEscape();
649 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 650 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
650 int isConst(); 651 int isConst();
651 int isBool(int result); 652 int isBool(int result);
652 Expression *doInline(InlineDoState *ids); 653 Expression *doInline(InlineDoState *ids);
720 FuncLiteralDeclaration *fd; 721 FuncLiteralDeclaration *fd;
721 722
722 FuncExp(Loc loc, FuncLiteralDeclaration *fd); 723 FuncExp(Loc loc, FuncLiteralDeclaration *fd);
723 Expression *syntaxCopy(); 724 Expression *syntaxCopy();
724 Expression *semantic(Scope *sc); 725 Expression *semantic(Scope *sc);
726 Expression *interpret(InterState *istate);
725 void scanForNestedRef(Scope *sc); 727 void scanForNestedRef(Scope *sc);
726 char *toChars(); 728 char *toChars();
727 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 729 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
728 #if IN_DMD 730 #if IN_DMD
729 elem *toElem(IRState *irs); 731 elem *toElem(IRState *irs);
983 FuncDeclaration *func; 985 FuncDeclaration *func;
984 Module* m; // starting point for overload resolution 986 Module* m; // starting point for overload resolution
985 987
986 DelegateExp(Loc loc, Expression *e, FuncDeclaration *func); 988 DelegateExp(Loc loc, Expression *e, FuncDeclaration *func);
987 Expression *semantic(Scope *sc); 989 Expression *semantic(Scope *sc);
990 Expression *interpret(InterState *istate);
988 MATCH implicitConvTo(Type *t); 991 MATCH implicitConvTo(Type *t);
989 Expression *castTo(Scope *sc, Type *t); 992 Expression *castTo(Scope *sc, Type *t);
990 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 993 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
991 void dump(int indent); 994 void dump(int indent);
992 995