No announcement yet.

ForEachLoop standard macro is showing errors on compile when no errors are present

  • Filter
  • Time
  • Show
Clear All
new posts

    ForEachLoop standard macro is showing errors on compile when no errors are present

    For whatever reason, the ForEachLoop standard macro has decided it doesn't know how to work with arrays. My project will no longer compile due to this error shown in the "Length" node of the ForEachLoop. It's saying that the length node cannot get the length of any array.

    The compile error is:
    The type of Target Array is undetermined. Connect something to the Length to imply a specific type.

    Do I need to switch the input from a "Wildcard" array to something else? Considering this is an out-of-the-box function, that would be odd.

    Is Unreal claiming the error is in this macro, or is it from something else I'm not seeing? Even if I remove all ForEachLoop calls in my blueprint, it still refuses to compile. I tried migrating my project to Unreal 4.19.1, but I'm still getting the compile errors. What's weird is that sometimes it will randomly decide the error is no longer there and it will compile. If I save, close, and re-open the project, it will usually bring the error back.

    Any ideas? I haven't adjusted the ForEachLoop macro in any way. It just up and quit working.

    Interestingly enough, the "Array" input node value is called "Array", but that's apparently not allowed. If I rename it to something else, then try to rename it back to "Array", it won't allow it. Could this be a conflict in the game engine somewhere?

    Image attached of the blueprint and error.

    It means you are referencing that macro with an invalid input.


      That's what's so bizarre about it. The inputs are all Actor arrays just as it expects. I found another post where someone had a similar issue, so they installed some random plugin called Substance (from substance painter, I believe?) and it fixed the issue for them. I just tried this, and sure enough, it fixed the issue. There's a bug somewhere, but I have no idea how to go about causing it to happen or why some random plugin would fix it.