comparison graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/template/MessageContainer.java @ 11542:f15d955897b7

Truffle-DSL: fixed message container was redirecting messages too often.
author Christian Humer <christian.humer@gmail.com>
date Fri, 06 Sep 2013 16:08:59 +0200
parents 43eab069ca9b
children 25ecb47a6d0e
comparison
equal deleted inserted replaced
11541:189baa5ea5f0 11542:f15d955897b7
127 127
128 String text = message.getText(); 128 String text = message.getText();
129 129
130 TypeElement rootEnclosing = Utils.findRootEnclosingType(getMessageElement()); 130 TypeElement rootEnclosing = Utils.findRootEnclosingType(getMessageElement());
131 TypeElement baseEnclosing = Utils.findRootEnclosingType(baseType); 131 TypeElement baseEnclosing = Utils.findRootEnclosingType(baseType);
132 if (rootEnclosing == null || !Utils.typeEquals(baseEnclosing.asType(), rootEnclosing.asType()) || this != message.getOriginalContainer()) { 132 if (rootEnclosing == null || !Utils.typeEquals(baseEnclosing.asType(), rootEnclosing.asType())) {
133 // redirect message 133 // redirect message
134 MessageContainer original = message.getOriginalContainer(); 134 MessageContainer original = message.getOriginalContainer();
135 messageElement = baseType; 135 messageElement = baseType;
136 messageAnnotation = null; 136 messageAnnotation = null;
137 messageValue = null; 137 messageValue = null;