Bug 87929

Summary: Wrong decoding of type signature with wildcards
Product: [Eclipse Project] JDT Reporter: Martin Aeschlimann <martinae>
Component: CoreAssignee: Jerome Lanneluc <jerome_lanneluc>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: P3 CC: markus.kell.r
Version: 3.0   
Target Milestone: 3.1 RC1   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
Regression test none

Description Martin Aeschlimann CLA 2005-03-14 10:13:30 EST
20050314

Do (programatically) a code resolve on the following variable type:
class A {
  Map<?, ? extends Set<? super ServerSocket>> z;
}

You get back a Java element that has resolved information and a key of:

  Ljava/util/Map<*+Ljava/util/Set<-Ljava/net/ServerSocket;>;>;

Use BindingKey to get a Signature:

  Ljava.util.Map<*L+;Ljava.util.Set<-Ljava.net.ServerSocket;>;>;

Signature.getTypeArgument returns the wrong number and invalid elements:
  *
  L+;
  Ljava.util.Set<-Ljava.net.ServerSocket;>;
Comment 1 Jerome Lanneluc CLA 2005-05-13 10:54:18 EDT
Created attachment 21110 [details]
Regression test

Cannot reproduce with I20050513-0010. Added regression test
ResolveTests_1_5#test0095()
Comment 2 Jerome Lanneluc CLA 2005-05-15 05:51:29 EDT
Regression test released.