comparison graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/model/ExecutableTypeData.java @ 18770:2c669386b5d0

Truffle-DSL: fix crash if type in rewriteOn is not of type Throwable. Improved error messages for Specialization#rewriteOn.
author Christian Humer <christian.humer@gmail.com>
date Fri, 02 Jan 2015 14:31:51 +0100
parents a665483c3881
children ae81dd154fb6
comparison
equal deleted inserted replaced
18769:144fba40c979 18770:2c669386b5d0
22 */ 22 */
23 package com.oracle.truffle.dsl.processor.model; 23 package com.oracle.truffle.dsl.processor.model;
24 24
25 import javax.lang.model.element.*; 25 import javax.lang.model.element.*;
26 26
27 import com.oracle.truffle.api.nodes.*;
27 import com.oracle.truffle.dsl.processor.*; 28 import com.oracle.truffle.dsl.processor.*;
28 import com.oracle.truffle.dsl.processor.java.*; 29 import com.oracle.truffle.dsl.processor.java.*;
29 30
30 public class ExecutableTypeData extends TemplateMethod { 31 public class ExecutableTypeData extends TemplateMethod {
31 32
48 public TypeSystemData getTypeSystem() { 49 public TypeSystemData getTypeSystem() {
49 return typeSystem; 50 return typeSystem;
50 } 51 }
51 52
52 public boolean hasUnexpectedValue(ProcessorContext context) { 53 public boolean hasUnexpectedValue(ProcessorContext context) {
53 return ElementUtils.canThrowType(getMethod().getThrownTypes(), context.getTruffleTypes().getUnexpectedValueException()); 54 return ElementUtils.canThrowType(getMethod().getThrownTypes(), context.getType(UnexpectedResultException.class));
54 } 55 }
55 56
56 public boolean isFinal() { 57 public boolean isFinal() {
57 return getMethod().getModifiers().contains(Modifier.FINAL); 58 return getMethod().getModifiers().contains(Modifier.FINAL);
58 } 59 }