Bug 173853

Summary: [recovery] Recovery add an unnecessary default contructor
Product: [Eclipse Project] JDT Reporter: David Audel <david_audel>
Component: CoreAssignee: David Audel <david_audel>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: 3.3   
Target Milestone: 3.3 M6   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
Proposed fix none

Description David Audel CLA 2007-02-12 07:20:43 EST
Two default constructors are added inside anonymous types when there is a syntax error.

eg.
public class X {
  void foo() {
    #
    new Object() {};
  }
}

The type binding of anonymous type has two default constructor.

This problem can be seen in a DOM AST.
Comment 1 David Audel CLA 2007-02-12 09:32:27 EST
Created attachment 58769 [details]
Proposed fix
Comment 2 David Audel CLA 2007-02-12 09:39:22 EST
Released for 3.3M6.

Test added
  ASTConverterTest2#test0607()

Tests updated
  CompletionParserTest
  CompletionParserTest2
  CompletionRecoveryTest
  DietRecoveryTest
  EnumCompletionParserTest
  EnumDietRecoveryTest
  InnerTypeCompletionTest
  LabelStatementCompletionTest
  NameReferenceCompletionTest
  ReferenceTypeCompletionTest
  SelectionTest
  StatementRecoveryTest
Comment 3 Maxime Daniel CLA 2007-03-20 02:26:31 EDT
Verified for 3.3 M6 using build I20070319-1335.