MacroTools combinedef problem with master but not 1.5.2

After recompile of master (Version 1.6.0-DEV.1262 (2020-10-17)) this morning I can no longer get MacroTools to work. It seems to work fine in 1.5.2 but test MacroTools fails with one error.

MacroTools: Error During Test at /home/colin/.julia/packages/MacroTools/X77lQ/test/runtests.jl:4
  Got exception outside of a @test
  LoadError: UndefVarError: f not defined
    [1] macro expansion
      @ ~/.julia/packages/MacroTools/X77lQ/src/utils.jl:44 [inlined]

A related issue might concern combinedef which is suddenly unknown, even though splitdef is fine. I wonder if it is as simple as combinedef missing from export in utils?

This should be fixed by, but you will need to use the latest master of MacroTools.jl for now, since there hasn’t been a new release yet.

1 Like

Yes, we should export it. Would you like to make a PR and update the README? I didn’t export it initially because I wrote it “just for the tests”, but it proved more convenient than manually writing the new function definition.

Invenia/ExprTools.jl has a more robust and much more tested version of splitdef and combinedef.

There is an open PR to make MacroTools just reexport those definitions.