Issue with SetTimer function names with/without spaces

So there’s an inconsistency involved in how UE handles spaces in function names which can make calling them with nodes like SetTimer very confusing. I would argue this is a bug somewhere rather than a works as intended, let me explain…

If you create a function via CamelCase, it automatically inserts a space into the publicly visible name, so for example if you name a function “NoSpace” it converts the name you see into “No Space” with a space added. If you go to rename it, it even prompts you with the name “No Space” with the space present. It doesn’t show the actual name you gave it, it shows the pretty printed name.

However, if you try to call this function with SetTimer and type in “No Space” with the space in there, SetTimer will never call it. You scratch your head, you look at your function and see it’s called “No Space”, you copy/paste its name to be certain you have it correct, but it still never gets called. Everywhere you see it in the editor it’s always referred to as “No Space”. Only if you can remember you happened to have originally typed it without a space and know to type in “NoSpace” as the argument to SetTimer will it work. Clearly there is some sort of internal function name not shown anywhere that SetTimer is checking against, rather than the visible name.