I have been struggling with this error today. It appears that under some circumstances LabView does not automatically recompile all VIs requiring referencing a typedef when the typedef is changed. In my case, the problematic routine was one in which the typedef did not appear as a control, indicator or diagram constant. An array of the typedef was an output from one SubVI that was an input to another. The first routine had a case structure around it with some cases where the output took a default value. I assume the default typedef output is the core of the problem in my case. Manually recompiling the routine (or making any code changes to it) solved the problem.
One could probably do a mass recompile of the whole VI hierarchy to solve this problem, but that's undesirable in a large program that is being developed by a team. It is at least something to try if you are running into this error.
Unfortunately I have not been able to make a simple program that reproduces this problem. I have attached some code but it does not make LabView crash. However, bad pointer dereferences are tricky things to debug because the severity depends on where you end up when you dereference. (In my production code, LabView was trying to read location 0xFFFFFFFF; Windows killed it). So this example could be causing silent corruption. Or my suspicions could be ungrounded and the bug may lie elsewhere.
I do notice that when I change the typedef and quit labview, labview offers to save the TLVI and the two subVIs that contain the typedef control, but not the routine I suspect is causing the problem. ("Routine that doesn't recompile.vi" in my example.)
This message is related to support issue "Reference#7184406".
-Rob Calhoun