Aufgabenblatt 2: Aufgabe 2 ClassCastException

Toa
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 121
Registriert: 16. Feb 2011 23:58

Aufgabenblatt 2: Aufgabe 2 ClassCastException

Beitrag von Toa » 20. Dez 2012 17:44

Huhu,

ich wollte meine Implementierung gerade mal in Eclipse testen und habe an folgender Stelle eine ClassCastException erhalten:

Triangle.AbstractSyntaxTrees.SimpleVname cannot be cast to Triangle.AbstractSyntaxTrees.ActualParameter

Code: Alles auswählen

@Override
	public Object visitSingleActualParameterSequence(
			SingleActualParameterSequence ast, Object o) {
		return (ast.AP = (ActualParameter) ast.AP.visit(this, null));
	}
Ich kann mir aber nicht erklären warum die hier auftreten sollte. Cast etc. müsste alles stimmen.

Grüße T0a

jonas
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 177
Registriert: 5. Okt 2008 21:35
Wohnort: DA

Re: Aufgabenblatt 2: Aufgabe 2 ClassCastException

Beitrag von jonas » 20. Dez 2012 18:02

Deine Implementierung von "visitActualParameter" gibt also scheinbar einen "SimpleVname" statt "ActualParameter" zurück?!?
Im Debugger durch steppen und schauen warum/wo??

Toa
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 121
Registriert: 16. Feb 2011 23:58

Re: Aufgabenblatt 2: Aufgabe 2 ClassCastException

Beitrag von Toa » 20. Dez 2012 18:25

Problem lag eher an der Auswertungsreihenfolge:

Code: Alles auswählen

ast.AP = (ActualParameter) ast.AP.visit(this, null)
return ast;
Und der Fehler hat sich durch die gesamte Implementierung gezogen. Danke für deine Hilfe.

Antworten

Zurück zu „Archiv“