Commit c4552ee8ed

Vexu <git@vexu.eu>
2020-05-14 16:18:14
store rparen in ReturnType.Invalid
This is useful for getting a partial function signature
1 parent a32e240
Changed files (2)
lib
lib/std/zig/ast.zig
@@ -897,7 +897,7 @@ pub const Node = struct {
         pub const ReturnType = union(enum) {
             Explicit: *Node,
             InferErrorSet: *Node,
-            Invalid,
+            Invalid: TokenIndex,
         };
 
         pub fn iterate(self: *FnProto, index: usize) ?*Node {
lib/std/zig/parse.zig
@@ -518,7 +518,7 @@ fn parseFnProto(arena: *Allocator, it: *TokenIterator, tree: *Tree) !?*Node {
     // TODO https://github.com/ziglang/zig/issues/3750
     const R = Node.FnProto.ReturnType;
     const return_type = if (return_type_expr == null)
-        R{ .Invalid = {} }
+        R{ .Invalid = rparen }
     else if (exclamation_token != null)
         R{ .InferErrorSet = return_type_expr.? }
     else