Bug 9183 - BinaryIndexer doesn't index all type references
Summary: BinaryIndexer doesn't index all type references
Status: RESOLVED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: 2.0 M3   Edit
Assignee: Olivier Thomann CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 9024
  Show dependency tree
 
Reported: 2002-02-06 12:56 EST by Jerome Lanneluc CLA
Modified: 2002-02-07 13:33 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jerome Lanneluc CLA 2002-02-06 12:56:51 EST
Build 20020205

The BinaryIndexer.extractReferenceFromConstantPool(byte[],ClassFileReader) 
method doesn't take all type references into account. The cases that come to 
mind are:
- type reference throw a static member access (e.g. X.foo())
- casting
- catch clause
- throw clause
etc...

Shouldn't we index all the entries of taged with ClassFileStruct.Class in the 
constant pool?
Comment 1 Olivier Thomann CLA 2002-02-06 13:26:53 EST
I thought they were referenced through the Field and Method ref. I added them.
I will check if 
9024 is fixed with this before I release the code.
Comment 2 Olivier Thomann CLA 2002-02-06 13:34:59 EST
9024 seems to be fixed with the change in the BinaryIndexer.
Released in HEAD.
Comment 3 Jerome Lanneluc CLA 2002-02-06 17:24:53 EST
Incremented index signature version so as to force reindexing.
Comment 4 Jerome Lanneluc CLA 2002-02-07 06:09:30 EST
addTypeReference(...) assumes that the type name is dot-separated. Changed 
extractReferenceFromConstantPool(...) to convert the name from being slash-
separated to dot-separated.