Macros should expand to code which calls trait methods via UFCS instead of via .method_name() as the latter is ambiguous when multiple traits with the same method names are in scope.
In this case the diff method is called ambiguously from macro-generated code.