diff --git a/lib/elixir_sense/core/normalized/macro/env.ex b/lib/elixir_sense/core/normalized/macro/env.ex index 2f354a92..a50a16a0 100644 --- a/lib/elixir_sense/core/normalized/macro/env.ex +++ b/lib/elixir_sense/core/normalized/macro/env.ex @@ -67,7 +67,12 @@ defmodule ElixirSense.Core.Normalized.Macro.Env do fn expansion_meta, args -> quoted = expander.(args, env) next = :elixir_module.next_counter(env.module) + + if Version.match?(System.version(), ">= 1.14.0-dev") do :elixir_quote.linify_with_context_counter(expansion_meta, {receiver, next}, quoted) + else + :elixir_quote.linify_with_context_counter(expansion_meta |> Keyword.get(:line, 0), {receiver, next}, quoted) + end end end @@ -535,7 +540,11 @@ defmodule ElixirSense.Core.Normalized.Macro.Env do _ -> local = allow_locals and + if Version.match?(System.version(), ">= 1.14.0-dev") do :elixir_def.local_for(meta, name, arity, [:defmacro, :defmacrop], e) + else + :elixir_def.local_for(module, name, arity, [:defmacro, :defmacrop]) + end case dispatch do {_, receiver} when local != false and receiver != module ->