Removing returns from interface breaks blueprints implementing it

I had an interface which returned a boolean (as I couldn’t get it to show up in the blueprint which implemented it otherwise) and then removed the return value, compiled it and hoped back to my blueprint which implemented it. I could still see the interface blueprint, but it was all mangled (see attached) and trying to compile caused the editor to crash and remain unopenable. Deleting the blueprint which was broken allowed the editor to open again.

Hi Ian.Holstead,

Can you post your crash logs here? They can be found at \Unreal Projects\PROJECTNAME\saved\logs. Additionally, does this occur in a blank project with no additional content or is it limited to one project?

Unfortunately I have quite a few crash logs and I don’t remember exactly which ones were relevant… You can find all the logs from around the time I had the issue here

I also just ran a test on a blank project in 4.7.4 and I was able to reproduce the behavior. The crash log from the empty project is attached here.

To reproduce the issue in 4.7.4,

  1. Create a new blank blueprints
    project without starter content
  2. Create a new actor and a new
  3. make the interface accept and return
    a boolean
  4. make the actor implement the
  5. remove the return from the
    interface, compile the interface and
    switched to the actor
  6. open the interface (observe that the
    blueprint looks like the original
    image) and compiling causes it to

Hi Ian.Holstead,

I was able to reproduce this and have entered a bug report, UE-13417 to be assessed by the development staff.