Bug 403561 - [aa] TypeReferenceImpl#isAssignableFrom should be more robust
Summary: [aa] TypeReferenceImpl#isAssignableFrom should be more robust
Status: NEW
Alias: None
Product: Xtend
Classification: Tools
Component: Core (show other bugs)
Version: 2.4.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-17 09:34 EDT by Sebastian Zarnekow CLA
Modified: 2013-03-17 09:34 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 Sebastian Zarnekow CLA 2013-03-17 09:34:36 EDT
It should be documented whether null is a valid param and if so, that the result is well defined, e.g. invalid references are considered to be not assignable.

java.lang.NullPointerException
	at org.eclipse.xtend.core.macro.declaration.TypeReferenceImpl.isAssignableFrom(TypeReferenceImpl.java:149)
	at annotations.EMFVisitableProcessor$6.apply(EMFVisitable.xtend:125)
	at annotations.EMFVisitableProcessor$6.apply(EMFVisitable.xtend:29)
	at org.eclipse.xtext.xbase.lib.internal.BooleanFunctionDelegate.apply(BooleanFunctionDelegate.java:40)
	at com.google.common.collect.Iterators$7.computeNext(Iterators.java:645)
	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
	at com.google.common.collect.Iterators$7.computeNext(Iterators.java:643)
	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:141)
	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:136)
	at com.google.common.collect.Sets.newLinkedHashSet(Sets.java:267)
	at org.eclipse.xtext.xbase.lib.IterableExtensions.toSet(IterableExtensions.java:693)
	at annotations.EMFVisitableProcessor.getInheritorsDeclaredIn(EMFVisitable.xtend:126)
	at annotations.EMFVisitableProcessor.access$2(EMFVisitable.xtend:123)
	at annotations.EMFVisitableProcessor$3.apply(EMFVisitable.xtend:49)
	at annotations.EMFVisitableProcessor$3.apply(EMFVisitable.xtend:29)
	at org.eclipse.xtext.xbase.lib.IterableExtensions.forEach(IterableExtensions.java:399)
	at annotations.EMFVisitableProcessor.doTransform(EMFVisitable.xtend:48)
	at org.eclipse.xtend.core.macro.AnnotationProcessor$2.run(AnnotationProcessor.java:131)
	at org.eclipse.xtend.core.macro.AnnotationProcessor.runWithCancelIndiciator(AnnotationProcessor.java:187)
	at org.eclipse.xtend.core.macro.AnnotationProcessor.inferencePhase(AnnotationProcessor.java:134)
	at org.eclipse.xtend.core.jvmmodel.XtendJvmModelInferrer.infer(XtendJvmModelInferrer.java:225)
	at org.eclipse.xtext.xbase.jvmmodel.JvmModelAssociator.installDerivedState(JvmModelAssociator.java:293)
	at org.eclipse.xtext.resource.DerivedStateAwareResource.installDerivedState(DerivedStateAwareResource.java:145)
	at org.eclipse.xtext.xbase.resource.BatchLinkableResource.getContents(BatchLinkableResource.java:124)
	at org.eclipse.xtend.ide.highlighting.XtendHighlightingCalculator.doProvideHighlightingFor(XtendHighlightingCalculator.java:102)
	at org.eclipse.xtext.xbase.ui.highlighting.XbaseHighlightingCalculator.provideHighlightingFor(XbaseHighlightingCalculator.java:98)
	at org.eclipse.xtext.ui.editor.syntaxcoloring.MergingHighlightedPositionAcceptor.provideHighlightingFor(MergingHighlightedPositionAcceptor.java:51)
	at org.eclipse.xtext.ui.editor.syntaxcoloring.HighlightingReconciler.reconcilePositions(HighlightingReconciler.java:92)
	at org.eclipse.xtext.ui.editor.syntaxcoloring.HighlightingReconciler.modelChanged(HighlightingReconciler.java:292)
	at org.eclipse.xtext.ui.editor.model.XtextDocument.notifyModelListeners(XtextDocument.java:126)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.afterModify(XtextDocument.java:180)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.afterModify(XtextDocument.java:1)
	at org.eclipse.xtext.util.concurrent.AbstractReadWriteAcces.modify(AbstractReadWriteAcces.java:61)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.modify(XtextDocument.java:192)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.process(XtextDocument.java:232)
	at org.eclipse.xtext.ui.editor.reconciler.XtextReconciler$DocumentListener.performNecessaryUpdates(XtextReconciler.java:81)
	at org.eclipse.xtext.ui.editor.model.XtextDocument.updateContentBeforeRead(XtextDocument.java:143)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.beforeReadOnly(XtextDocument.java:163)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.beforeReadOnly(XtextDocument.java:1)
	at org.eclipse.xtext.util.concurrent.AbstractReadWriteAcces.readOnly(AbstractReadWriteAcces.java:31)
	at org.eclipse.xtext.ui.editor.model.XtextDocument$XtextDocumentLocker.readOnly(XtextDocument.java:218)
	at org.eclipse.xtext.ui.editor.model.XtextDocument.readOnly(XtextDocument.java:79)
	at org.eclipse.xtext.ui.editor.occurrences.DefaultOccurrenceComputer.createAnnotationMap(DefaultOccurrenceComputer.java:81)
	at org.eclipse.xtext.ui.editor.occurrences.OccurrenceMarker$MarkOccurrenceJob.run(OccurrenceMarker.java:122)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)