Skip to content

Commit b5de736

Browse files
authored
Placeholder implementation of multi-arg @nospecialize (#15)
1 parent e24d0e6 commit b5de736

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/syntax_macros.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22
# extensions":
33
#
44
# * They emit syntactic forms with special `Kind`s and semantics known to
5-
# lowering
5+
# lowering
66
# * There is no other Julia surface syntax for these `Kind`s.
77

88
# In order to implement these here without getting into bootstrapping problems,
99
# we just write them as plain old macro-named functions and add the required
1010
# __context__ argument ourselves.
1111
#
12-
# TODO: @inline, @noinline, @inbounds, @simd, @ccall, @isdefined, @assume_effects
12+
# TODO: @inline, @noinline, @inbounds, @simd, @ccall, @assume_effects
1313
#
1414
# TODO: Eventually move these to proper `macro` definitions and use
1515
# `JuliaLowering.include()` or something. Then we'll be in the fun little world
@@ -29,7 +29,8 @@ function _apply_nospecialize(ctx, ex)
2929
end
3030
end
3131

32-
function Base.var"@nospecialize"(__context__::MacroContext, ex)
32+
function Base.var"@nospecialize"(__context__::MacroContext, ex, exs...)
33+
# TODO support multi-arg version properly
3334
_apply_nospecialize(__context__, ex)
3435
end
3536

@@ -220,4 +221,3 @@ function var"@inert"(__context__::MacroContext, ex)
220221
@chk kind(ex) == K"quote"
221222
@ast __context__ __context__.macrocall [K"inert" ex]
222223
end
223-

0 commit comments

Comments
 (0)