Changeset 1200
- Timestamp:
- 06/30/08 20:43:22 (2 months ago)
- Files:
-
- trunk/descent.core/src/descent/internal/codeassist/SelectionEngine.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/ASTDmdNode.java (modified) (2 diffs)
- trunk/descent.core/src/descent/internal/compiler/parser/ArrayInitializer.java (modified) (2 diffs)
- trunk/descent.core/src/descent/internal/compiler/parser/ClassDeclaration.java (modified) (2 diffs)
- trunk/descent.core/src/descent/internal/compiler/parser/DotVarExp.java (modified) (2 diffs)
- trunk/descent.core/src/descent/internal/compiler/parser/ForeachStatement.java (modified) (2 diffs)
- trunk/descent.core/src/descent/internal/compiler/parser/FuncDeclaration.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/Module.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/TemplateDeclaration.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/Type.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/TypeAArray.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/TypeClass.java (modified) (1 diff)
- trunk/descent.core/src/descent/internal/compiler/parser/ast/ASTNode.java (modified) (1 diff)
- trunk/descent.ui/src/descent/internal/ui/text/java/hover/JavadocHover.java (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/descent.core/src/descent/internal/codeassist/SelectionEngine.java
r1195 r1200 343 343 if (isLocal(sym)) { 344 344 addLocal((Declaration) sym, sym.getFlags()); 345 } else if (!(sym instanceof descent.internal.compiler.parser.Package) 346 && !(sym instanceof descent.internal.compiler.parser.Import)) { 345 } else if (!(sym instanceof descent.internal.compiler.parser.Package)) { 347 346 addBinarySearch(sym); 348 347 } trunk/descent.core/src/descent/internal/compiler/parser/ASTDmdNode.java
r1189 r1200 623 623 */ 624 624 public Dsymbol creator; 625 625 626 626 public void accessCheck(Scope sc, Expression e, Declaration d, 627 627 SemanticContext context) { 628 accessCheck(sc, e, d, context, null); 629 } 630 631 public void accessCheck(Scope sc, Expression e, Declaration d, 632 SemanticContext context, ASTDmdNode reference) { 628 633 if (e == null) { 629 634 if ((d.prot() == PROTprivate && d.getModule() != sc.module … … 647 652 } 648 653 } 649 cd.accessCheck(sc, d, context, e);654 cd.accessCheck(sc, d, context, reference != null ? reference : e); 650 655 } else if (e.type.ty == Tstruct) { // Do access check 651 656 StructDeclaration cd; 652 657 653 658 cd = (((TypeStruct) e.type).sym); 654 cd.accessCheck(sc, d, context, e);659 cd.accessCheck(sc, d, context, reference != null ? reference : e); 655 660 } 656 661 } trunk/descent.core/src/descent/internal/compiler/parser/ArrayInitializer.java
r1199 r1200 32 32 33 33 public void addInit(Expression index, Initializer value) { 34 if (value == null) {35 System.out.println(123456);36 }37 38 34 if (this.index == null) { 39 35 this.index = new Expressions(); … … 173 169 174 170 Initializer init = value.get(i); 175 if (init == null) {176 System.out.println(123456);177 }178 171 init = init.syntaxCopy(context); 179 172 ai.value.set(i, init); trunk/descent.core/src/descent/internal/compiler/parser/ClassDeclaration.java
r1198 r1200 145 145 for (i = 0; i < this.baseclasses.size(); i++) { 146 146 BaseClass b = this.baseclasses.get(i); 147 148 if (b == null || b.base == null) {149 System.out.println(123456);150 }151 147 access = b.base.getAccess(smember); 152 148 switch (access) { … … 353 349 @Override 354 350 public void semantic(Scope sc, SemanticContext context) { 355 if ("FilePath".equals(new String(ident.ident))) {356 System.out.println(123456);357 }358 359 351 if (rest != null && !rest.isConsumed()) { 360 352 if (rest.getScope() == null) { trunk/descent.core/src/descent/internal/compiler/parser/DotVarExp.java
r1189 r1200 16 16 public Declaration var; 17 17 public int hasOverloads; 18 public IdentifierExp ident; // Descent: for better error reporting 18 19 19 20 public DotVarExp(Loc loc, Expression e, Declaration var) { … … 129 130 .isAggregateDeclaration(); 130 131 e1 = getRightThis(loc, sc, ad, e1, var, context); 131 accessCheck(sc, e1, var, context );132 accessCheck(sc, e1, var, context, ident); 132 133 } 133 134 } trunk/descent.core/src/descent/internal/compiler/parser/ForeachStatement.java
r1188 r1200 673 673 } 674 674 } 675 if (!arg.type.equals(taa. nextOf())) {675 if (!arg.type.equals(taa.index)) { 676 676 if (context.acceptsProblems()) { 677 677 context.acceptProblem(Problem.newSemanticTypeError( 678 IProblem.ForeachIndexMustBeType, this, new String[] { taa.index.toChars(context), arg.type.toChars(context) }));678 IProblem.ForeachIndexMustBeType, arg, new String[] { taa.index.toChars(context), arg.type.toChars(context) })); 679 679 } 680 680 } … … 684 684 if (context.acceptsProblems()) { 685 685 context.acceptProblem(Problem.newSemanticTypeError( 686 IProblem.ForeachValueMustBeType, this, new String[] { taa.next.toChars(context), arg.type.toChars(context) }));686 IProblem.ForeachValueMustBeType, arg, new String[] { taa.next.toChars(context), arg.type.toChars(context) })); 687 687 } 688 688 } trunk/descent.core/src/descent/internal/compiler/parser/FuncDeclaration.java
r1198 r1200 1332 1332 f2 = s.isFuncDeclaration(); 1333 1333 } 1334 if (f2 == null) {1335 System.out.println(123456);1336 }1337 1334 f2 = f2.overloadExactMatch(type, context); 1338 1335 if (f2 != null && f2.isFinal() trunk/descent.core/src/descent/internal/compiler/parser/Module.java
r1198 r1200 389 389 */ 390 390 391 if ("_P_WAIT".equals(new String(ident))) {392 System.out.println(123456);393 }394 395 391 Dsymbol s = null; 396 392 if (insearch) { trunk/descent.core/src/descent/internal/compiler/parser/TemplateDeclaration.java
r1198 r1200 803 803 } 804 804 805 if (f == beforePf) {806 System.out.println(123456);807 }808 809 805 beforePf.overnext = f; 810 806 f.overprevious = beforePf; trunk/descent.core/src/descent/internal/compiler/parser/Type.java
r1189 r1200 953 953 954 954 // deco strings are unique and semantic() has been run 955 if (this.singleton == t.singleton || (t != null && singleton.deco != null && singleton.deco.equals(t.singleton.deco))) { 955 if (this.singleton == t.singleton || 956 (t != null && deco != null && t.deco != null && deco.equals(t.deco)) || 957 (t != null && singleton.deco != null && singleton.deco.equals(t.singleton.deco))) { 956 958 return true; 957 959 } trunk/descent.core/src/descent/internal/compiler/parser/TypeAArray.java
r1167 r1200 28 28 boolean children = visitor.visit(this); 29 29 if (children) { 30 TreeVisitor.acceptChildren(visitor, source Index);31 TreeVisitor.acceptChildren(visitor, key);30 TreeVisitor.acceptChildren(visitor, sourceNext); 31 TreeVisitor.acceptChildren(visitor, sourceIndex); 32 32 } 33 33 visitor.endVisit(this); trunk/descent.core/src/descent/internal/compiler/parser/TypeClass.java
r1189 r1200 360 360 361 361 de = new DotVarExp(e.loc, e, d); 362 de. start = e.start;363 de. length = e.length;362 de.ident = ident; // Descent: for better error reporting 363 de.copySourceRange(e); 364 364 return de.semantic(sc, context); 365 365 } trunk/descent.core/src/descent/internal/compiler/parser/ast/ASTNode.java
r1171 r1200 89 89 /** {@inheritDoc} */ 90 90 public final void accept(IASTVisitor visitor) { 91 AssertIn.isNotNull(visitor);92 93 91 // begin with the generic pre-visit 94 92 visitor.preVisit(this); trunk/descent.ui/src/descent/internal/ui/text/java/hover/JavadocHover.java
r1131 r1200 22 22 23 23 import descent.core.ICompilationUnit; 24 import descent.core.IImportDeclaration; 24 25 import descent.core.IJavaElement; 25 26 import descent.core.IMember; … … 185 186 return null; 186 187 } 188 } else if (curr instanceof IImportDeclaration) { 189 HTMLPrinter.addSmallHeader(buffer, "import " + ((IImportDeclaration) curr).getElementName()); 190 hasContents= true; 187 191 } 188 192 }
