Community
Participate
Working Groups
When I use the keyword for a type, such as "string", the code in egl.lang.reflect can be compiled. But when I replace the keyword with the name for the type's ExternalType, the build fails. An example type and the exception stack trace are below. package egl.lang.reflect; import egl.lang.EglString; record ParameterizableType type Annotation { targets = [ElementKind.ExternalTypePart], @PartType{"org.eclipse.edt.mof.egl.ParameterizableType"}, @Stereotype } name EglString; // name string; parameterizedType TypeRef; end Caused by: java.lang.ClassCastException: org.eclipse.edt.mof.egl.impl.ParameterizableTypeImpl incompatible with org.eclipse.edt.mof.EType at org.eclipse.edt.compiler.internal.egl2mof.Egl2MofMember.setUpMofTypedElement(Egl2MofMember.java:407) at org.eclipse.edt.compiler.internal.egl2mof.Egl2Mof.setUpMofTypedElement(Egl2Mof.java:1) at org.eclipse.edt.compiler.internal.egl2mof.Egl2MofMember.visit(Egl2MofMember.java:146) at org.eclipse.edt.compiler.internal.egl2mof.Egl2Mof.visit(Egl2Mof.java:1) at org.eclipse.edt.compiler.core.ast.StructureItem.accept(StructureItem.java:123) at org.eclipse.edt.compiler.internal.egl2mof.Egl2MofPart.handleContents(Egl2MofPart.java:580) at org.eclipse.edt.compiler.internal.egl2mof.Egl2MofPart.defaultHandleVisitPart(Egl2MofPart.java:345) at org.eclipse.edt.compiler.internal.egl2mof.Egl2MofPart.visit(Egl2MofPart.java:97) at org.eclipse.edt.compiler.internal.egl2mof.Egl2Mof.visit(Egl2Mof.java:1) at org.eclipse.edt.compiler.core.ast.Record.accept(Record.java:85) at org.eclipse.edt.compiler.internal.egl2mof.Egl2Mof.convert(Egl2Mof.java:160) at org.eclipse.edt.ide.core.internal.builder.AbstractProcessingQueue.createIRFromBoundAST(AbstractProcessingQueue.java:250) at org.eclipse.edt.ide.core.internal.builder.AbstractProcessingQueue.processCompiledPart(AbstractProcessingQueue.java:226) at org.eclipse.edt.ide.core.internal.builder.AbstractProcessingQueue.level03Compile(AbstractProcessingQueue.java:165) at org.eclipse.edt.compiler.internal.core.builder.AbstractProcessingQueue.process(AbstractProcessingQueue.java:169) ... 17 more
Created attachment 199856 [details] Patch to check for ParameterizableType I'm not entirely familiar with ParameterizableType/ParameterizedType, so I've attached a patch rather than just committing the fix. Someone who knows better should review it.
This is no longer an issue. Tim says I should use the keywords, so that's what I've done. I didn't review the patch.
Hurray.