I have noticed a small bug in Labview 6.02: When creating a sub-vi using Edit->create sub vi , and the code has error in/ error out terminals and/or ref in/ ref out terminals, the sub vi you create has these mixed up and you have change the labels manually. Ie the error in control has the error out indicator label and visa versa.
Think about it this way. Where the error cluster is coming in to your new sub-vi labview checks downstream to see if it can find a name for the new control. It does, its the indicator named 'error out' of the last sub-vi. Labview then checks upstream of the new error cluster indicator for a name it could give it. It finds the next sub-vi input is 'Error in (no error)' and names the output this. In this case (and with refs) its easy to see how labview could rename things correctly. But to labview this is just a lablename and its not as smart as a human to see how it could be renamed.
What if the downstream indicator output feeding your new subvi was 'ModelNumber'. The new control input would be correctly titled 'ModelNumber'. This example should show you what labview is trying to do. It just doesn't differentiate when it comes to error clusters.
I don't really consider this a bug. When you create a sub-vi, the controls and indicators that are created are given the labels of the functions in the main VI. This was probably done intentionally to make the creation of a sub-vi simpler.