| ... | @@ -4721,7 +4721,6 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a | ... | @@ -4721,7 +4721,6 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a |
| 4721 | const scope = &c.global_scope.base; | 4721 | const scope = &c.global_scope.base; |
| 4722 | | 4722 | |
| 4723 | const pub_tok = try appendToken(c, .Keyword_pub, "pub"); | 4723 | const pub_tok = try appendToken(c, .Keyword_pub, "pub"); |
| 4724 | const inline_tok = try appendToken(c, .Keyword_inline, "inline"); | | |
| 4725 | const fn_tok = try appendToken(c, .Keyword_fn, "fn"); | 4724 | const fn_tok = try appendToken(c, .Keyword_fn, "fn"); |
| 4726 | const name_tok = try appendIdentifier(c, name); | 4725 | const name_tok = try appendIdentifier(c, name); |
| 4727 | _ = try appendToken(c, .LParen, "("); | 4726 | _ = try appendToken(c, .LParen, "("); |
| ... | @@ -4749,6 +4748,11 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a | ... | @@ -4749,6 +4748,11 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a |
| 4749 | | 4748 | |
| 4750 | _ = try appendToken(c, .RParen, ")"); | 4749 | _ = try appendToken(c, .RParen, ")"); |
| 4751 | | 4750 | |
| | 4751 | _ = try appendToken(c, .Keyword_callconv, "callconv"); |
| | 4752 | _ = try appendToken(c, .LParen, "("); |
| | 4753 | const callconv_expr = try transCreateNodeEnumLiteral(c, "Inline"); |
| | 4754 | _ = try appendToken(c, .RParen, ")"); |
| | 4755 | |
| 4752 | const block_lbrace = try appendToken(c, .LBrace, "{"); | 4756 | const block_lbrace = try appendToken(c, .LBrace, "{"); |
| 4753 | | 4757 | |
| 4754 | const return_kw = try appendToken(c, .Keyword_return, "return"); | 4758 | const return_kw = try appendToken(c, .Keyword_return, "return"); |
| ... | @@ -4788,8 +4792,8 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a | ... | @@ -4788,8 +4792,8 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a |
| 4788 | }, .{ | 4792 | }, .{ |
| 4789 | .visib_token = pub_tok, | 4793 | .visib_token = pub_tok, |
| 4790 | .name_token = name_tok, | 4794 | .name_token = name_tok, |
| 4791 | .extern_export_inline_token = inline_tok, | | |
| 4792 | .body_node = &block.base, | 4795 | .body_node = &block.base, |
| | 4796 | .callconv_expr = callconv_expr, |
| 4793 | }); | 4797 | }); |
| 4794 | mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items); | 4798 | mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items); |
| 4795 | return &fn_proto.base; | 4799 | return &fn_proto.base; |
| ... | @@ -5739,7 +5743,6 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void { | ... | @@ -5739,7 +5743,6 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void { |
| 5739 | const scope = &block_scope.base; | 5743 | const scope = &block_scope.base; |
| 5740 | | 5744 | |
| 5741 | const pub_tok = try appendToken(c, .Keyword_pub, "pub"); | 5745 | const pub_tok = try appendToken(c, .Keyword_pub, "pub"); |
| 5742 | const inline_tok = try appendToken(c, .Keyword_inline, "inline"); | | |
| 5743 | const fn_tok = try appendToken(c, .Keyword_fn, "fn"); | 5746 | const fn_tok = try appendToken(c, .Keyword_fn, "fn"); |
| 5744 | const name_tok = try appendIdentifier(c, m.name); | 5747 | const name_tok = try appendIdentifier(c, m.name); |
| 5745 | _ = try appendToken(c, .LParen, "("); | 5748 | _ = try appendToken(c, .LParen, "("); |
| ... | @@ -5784,6 +5787,11 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void { | ... | @@ -5784,6 +5787,11 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void { |
| 5784 | | 5787 | |
| 5785 | _ = try appendToken(c, .RParen, ")"); | 5788 | _ = try appendToken(c, .RParen, ")"); |
| 5786 | | 5789 | |
| | 5790 | _ = try appendToken(c, .Keyword_callconv, "callconv"); |
| | 5791 | _ = try appendToken(c, .LParen, "("); |
| | 5792 | const callconv_expr = try transCreateNodeEnumLiteral(c, "Inline"); |
| | 5793 | _ = try appendToken(c, .RParen, ")"); |
| | 5794 | |
| 5787 | const type_of = try c.createBuiltinCall("@TypeOf", 1); | 5795 | const type_of = try c.createBuiltinCall("@TypeOf", 1); |
| 5788 | | 5796 | |
| 5789 | const return_kw = try appendToken(c, .Keyword_return, "return"); | 5797 | const return_kw = try appendToken(c, .Keyword_return, "return"); |
| ... | @@ -5815,9 +5823,9 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void { | ... | @@ -5815,9 +5823,9 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void { |
| 5815 | .return_type = .{ .Explicit = &type_of.base }, | 5823 | .return_type = .{ .Explicit = &type_of.base }, |
| 5816 | }, .{ | 5824 | }, .{ |
| 5817 | .visib_token = pub_tok, | 5825 | .visib_token = pub_tok, |
| 5818 | .extern_export_inline_token = inline_tok, | | |
| 5819 | .name_token = name_tok, | 5826 | .name_token = name_tok, |
| 5820 | .body_node = block_node, | 5827 | .body_node = block_node, |
| | 5828 | .callconv_expr = callconv_expr, |
| 5821 | }); | 5829 | }); |
| 5822 | mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items); | 5830 | mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items); |
| 5823 | | 5831 | |