comparison dmd/dsymbol.c @ 19:788401029ecf trunk

[svn r23] * Updated to DMD 1.021
author lindquist
date Thu, 04 Oct 2007 03:42:56 +0200
parents c53b6e3fe49a
children 0ccfae271c45
comparison
equal deleted inserted replaced
18:c05ef76f1c20 19:788401029ecf
773 { 773 {
774 return "ScopeDsymbol"; 774 return "ScopeDsymbol";
775 } 775 }
776 776
777 777
778 /*******************************************
779 * Look for member of the form:
780 * const(MemberInfo)[] getMembers(string);
781 * Returns NULL if not found
782 */
783
784 #if V2
785 FuncDeclaration *ScopeDsymbol::findGetMembers()
786 {
787 Dsymbol *s = search_function(this, Id::getmembers);
788 FuncDeclaration *fdx = s ? s->isFuncDeclaration() : NULL;
789
790 #if 0 // Finish
791 static TypeFunction *tfgetmembers;
792
793 if (!tfgetmembers)
794 {
795 Scope sc;
796 Arguments *arguments = new Arguments;
797 Arguments *arg = new Argument(STCin, Type::tchar->constOf()->arrayOf(), NULL, NULL);
798 arguments->push(arg);
799
800 Type *tret = NULL;
801 tfgetmembers = new TypeFunction(arguments, tret, 0, LINKd);
802 tfgetmembers = (TypeFunction *)tfgetmembers->semantic(0, &sc);
803 }
804 if (fdx)
805 fdx = fdx->overloadExactMatch(tfgetmembers);
806 #endif
807 if (fdx && fdx->isVirtual())
808 fdx = NULL;
809
810 return fdx;
811 }
812 #endif
813
814
778 /****************************** WithScopeSymbol ******************************/ 815 /****************************** WithScopeSymbol ******************************/
779 816
780 WithScopeSymbol::WithScopeSymbol(WithStatement *withstate) 817 WithScopeSymbol::WithScopeSymbol(WithStatement *withstate)
781 : ScopeDsymbol() 818 : ScopeDsymbol()
782 { 819 {