Bug 97092 - Generics - BCException thrown: Bad type signature <
Summary: Generics - BCException thrown: Bad type signature <
Status: RESOLVED DUPLICATE of bug 96111
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: DEVELOPMENT   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Adrian Colyer CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-27 18:26 EDT by William Ono CLA
Modified: 2005-05-28 02:06 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description William Ono CLA 2005-05-27 18:26:15 EDT
Using Eclipse 3.1M7 with AJDT 1.2.0.20050525133001 an 'Internal compiler error'
occurs while compiling a project consisting of these two files:

FooClass.java:
public class FooClass {
	private Iterable<Object> it;
}

FooAspect.java:
privileged aspect FooAspect {
	public void FooClass.doFoo() { it = null; }
}


Curiously, if I build once after changing Iterable<Object> to Iterable, I can
change it back and rebuild without the error occurring.  If I clean the project,
the error comes back.


Here's the trace:

org.aspectj.weaver.BCException: Bad type signature <
	at org.aspectj.weaver.TypeX.forSignature(TypeX.java:195)
	at org.aspectj.weaver.Member.signatureToTypes(Member.java:153)
	at org.aspectj.weaver.Member.<init>(Member.java:54)
	at org.aspectj.weaver.ResolvedMember.<init>(ResolvedMember.java:80)
	at
org.aspectj.weaver.AjcMemberMaker.privilegedAccessMethodForFieldSet(AjcMemberMaker.java:319)
	at
org.aspectj.ajdt.internal.compiler.lookup.PrivilegedFieldBinding.<init>(PrivilegedFieldBinding.java:40)
	at
org.aspectj.ajdt.internal.compiler.lookup.PrivilegedHandler.getPrivilegedAccessField(PrivilegedHandler.java:50)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.FieldBinding.findPrivilegedBinding(FieldBinding.java:307)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.FieldBinding.getVisibleBinding(FieldBinding.java:301)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope.findField(Scope.java:684)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope.getBinding(Scope.java:1380)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.SingleNameReference.resolveType(SingleNameReference.java:672)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.Assignment.resolveType(Assignment.java:176)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.Expression.resolve(Expression.java:804)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:415)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:160)
	at
org.aspectj.ajdt.internal.compiler.ast.InterTypeMethodDeclaration.resolveStatements(InterTypeMethodDeclaration.java:94)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:393)
	at
org.aspectj.ajdt.internal.compiler.ast.InterTypeDeclaration.resolve(InterTypeDeclaration.java:103)
	at
org.aspectj.ajdt.internal.compiler.ast.InterTypeMethodDeclaration.resolve(InterTypeMethodDeclaration.java:81)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1026)
	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.resolve(AspectDeclaration.java:110)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1075)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:280)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:546)
	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:365)
	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:727)
	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:206)
	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:140)
	at org.aspectj.ajde.internal.CompilerAdapter.compile(CompilerAdapter.java:121)
	at
org.aspectj.ajde.internal.AspectJBuildManager$CompilerThread.run(AspectJBuildManager.java:191)



eclipse.buildId=I20050513-1415
java.version=1.5.0_02
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_CA
Command-line arguments:  -os win32 -ws win32 -arch x86


Hope this report is useful to you.
Comment 1 Matt Chapman CLA 2005-05-27 18:51:12 EDT
Passing over to AspectJ
Comment 2 William Ono CLA 2005-05-28 02:06:14 EDT
Whoops, must have forgotten to search bugs in the AspectJ project as well as in AJDT

*** This bug has been marked as a duplicate of 96111 ***