Actor Blueprint fails to compile if it includes a macro that calls one of its methods

Title explains it. To reproduce:

  1. Create an actor blueprint.
  2. Create a method inside this newly created actor blueprint.
  3. Create a macro library (with Actor as base).
  4. Create a macro inside the library, with an Exec pin and a reference to the created actor blueprint as inputs.
  5. Inside the macro, call the method you created.
  6. Include the macro somewhere in the Actor’s Event Graph (say, in the Tick event).
  7. Try to compile the actor.

Expected: compiled sucessfully. The macro (should) simply expand to a call of a method that exists within the actor.
Result: fails to compile. Complains about not being able to find the method.

An important note is that child blueprints do not fail to compile if they include the macro (assuming the macro does not have any of their methods).

Thanks in advance.

Hello VitorCBSB,

Thank you for reporting this issue. I’ve reproduced the issue and entered a bug report for it. You can find/track the bug report here: UE-42735.

Have a nice day!