Description

Blueprints that include a macro that includes one of their own functions are unable to compile. The error message that is given is:

Error Could not find a function named "MyFunction" in 'ActorBP_C'.
Make sure 'ActorBP_C' has been compiled for  My Function 

Regression?: No
This also occurred in 4.14

Steps to Reproduce
  1. Create a new Actor Blueprint (ActorBP)
  2. Add a new function and compile/save
  3. Create a new blueprint macro library based off Actor
  4. In the new macro, add an exec input/output and an ActorBP reference as an input
  5. From the ActorBP input, call the function created in step 2 and connect it to the exec in/out pins
  6. Compile/save
  7. Inside of ActorBP, call the new macro on BeginPlay and compile the blueprint
    Result: The compile fails, mentioning "Error Could not find a function named "MyFunction" in 'ActorBP_C'. Make sure 'ActorBP_C' has been compiled for My Function"
    Expected: The compile succeeds

Have Comments or More Details?

Head over to the existing Questions & Answers thread and let us know what's up.

1
Login to Vote

Won't Fix
ComponentUE - Gameplay - Blueprint Compiler
Affects Versions4.144.154.16
CreatedMar 9, 2017
ResolvedAug 18, 2021
UpdatedAug 18, 2021