Should Promote to Variable in a Functions Library not default to local?

This is pretty straightforward, as is the workaround, but I’m wondering if it’s actually a bug or if I’m missing some purpose for this behavior.

If I drag off of a parameter inside of a functions library, such as a value in a break hit result, then select promote to variable, the functions library promotes it to a global variable, not a local variable. When I compile, I get the error message “The variable NewVar_0 cannot be declared in FunctionLibrary MovementFunctionsLibrary” which makes sense.

Now, it only takes an extra second to create a local variable and move on, but I’m curious why it defaults to this behavior, and doesn’t offer promote to local variable on the action/context menu that drops down. Is this to favor the writing of functions inside of a blueprint rather than a functions library?


We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.