errors/invalid-type-check.test \
errors/loops.vala \
errors/method-throws.vala \
+ errors/unhandled.vala \
errors/bug567181.vala \
errors/bug579101.vala \
errors/bug596228.vala \
--- /dev/null
+public errordomain FooError {
+ FAIL
+}
+
+public class Foo : Object {
+ public string bar {
+ get {
+ throw new FooError.FAIL ("property getter");
+ }
+ set {
+ throw new FooError.FAIL ("property setter");
+ }
+ }
+
+ public Foo () {
+ throw new FooError.FAIL ("creation method");
+ }
+
+ construct {
+ throw new FooError.FAIL ("constructor");
+ }
+
+ class construct {
+ throw new FooError.FAIL ("class constructor");
+ }
+
+ static construct {
+ throw new FooError.FAIL ("static constructor");
+ }
+
+ ~Foo () {
+ throw new FooError.FAIL ("destructor");
+ }
+
+ class ~Foo () {
+ throw new FooError.FAIL ("class destructor");
+ }
+
+ public void foo () {
+ throw new FooError.FAIL ("method");
+ }
+}
+
+void main () {
+}
body.check (context);
}
+ if (body != null && !body.error) {
+ var body_errors = new ArrayList<DataType> ();
+ body.get_error_types (body_errors);
+ foreach (DataType body_error_type in body_errors) {
+ if (!((ErrorType) body_error_type).dynamic_error) {
+ Report.warning (body_error_type.source_reference, "unhandled error `%s'".printf (body_error_type.to_string()));
+ }
+ }
+ }
+
context.analyzer.current_symbol = parent_symbol;
return !error;