Unable to save. Structs get corrupted every few days.

struct error.png

We had quite a few cases of this, usually we have backup. But few times we lost days of work.

Unreal gets very unstable when we use structs, function libraries or sometimes dispatchers.

Usually we get stuck with “cannot save” error due to “graph is linked to private object” and usually that object leads to such corrupted struct or function that just refuses to compile.
When we are lucky sometimes compiling troublemaking function fixes it all, but with garbled structs we do not have solution.

I hope all the struct bugs are fixed with 4.8…

yep, they are unstable as hellWn1bW7R.gif

Hi Nawrot,

This was reported as UE-12550 and is reported as fixed in 4.8.

Have you posted this to the answerhub at I haven’t been able to reproduce this error on my end while attempting to follow the steps shown in your gif. Please post your crashlogs, callstack, and steps that you took that reproduce this error in the answerhub post within the bug reports section so we can take a look.

Great news Adam, we seriously considered removing all structs from code, that would be like recreating everything again for us.
Structs with pure functions are awesome, when they work.

PS. Search references function for function libraries, dispatchers, structs etc is quite useless.

yes i reportedthis few days ago and missed [Ben Halliday :diamonds::diamonds: STAFF] answer
answerhub updated with new info and new gifs
its ok to post as gifs?

Structs have been very prone to issues for me as well. I’ve posted various issues with 'em to the answer hub, the problem though is that the corruption issues aren’t easy to reproduce with any certainty which makes it hard to get it fixed. Most of the problems I’ve found with them seem to center around editing a struct’s definition after you’ve used it in a blueprint. About 20% of the time this causes huge problems.

gifs are perfectly fine to post and often can be helpful if they clearly show the error in question, so please feel free to add them when/where relevant.