about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gir/parse.ha6
1 files changed, 3 insertions, 3 deletions
diff --git a/gir/parse.ha b/gir/parse.ha
index 3c0204f..a484dc6 100644
--- a/gir/parse.ha
+++ b/gir/parse.ha
@@ -608,10 +608,10 @@ fn parse_array_type_union(parser: *xml::parser, out: *void) (void | error) = {
 	*out = array;
 };
 
-type parse_func = fn(parser: *xml::parser, data: *void) (void | error);
+type parse_func = nullable *fn(parser: *xml::parser, data: *void) (void | error);
 type scan_element = (
 	str,
-	nullable *parse_func,
+	parse_func,
 	nullable *void,
 );
 type scan_attribute = (
@@ -662,7 +662,7 @@ fn parse_element(
 			const (name, func, data) = elements[i];
 			if (start == name) {
 				match (func) {
-				case let func: *parse_func =>
+				case let func: *fn(*xml::parser, *void) (void | error) =>
 					func(parser, data: *void)?;
 				case null =>
 					ignore(parser, name)?;