The & has low precedence (low binding). Therefore, "value ~> &op/1 ~> &op2/1" is being parsed as "value ~> &(op/1 ~> &op2/1)", which is where the warning comes from.
Proof: iex(1)> Macro.to_string(quote do: value ~> &op/1 ~> &op2/1) "value ~> &(op / 1 ~> &op2/1)" -- You received this message because you are subscribed to the Google Groups "elixir-lang-core" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4JOhBoH80uOr2cvK%3Dh69mjSHu45H9CZ_gxzkJz48RyW%3DQ%40mail.gmail.com.
