[BUG] Split struct for function's parameters return wrong pins

Hi!

Found in 4.6.1.

Simple function takes input vector, break it, abs it’s components, then makes vector and returns new “abs” vector:

For me, it have easier and smaller look if I simply split input/output vector:

But when I compile it, and use in construction or event graph, it produces wrong pins and error:

Hi ,

I haven’t been able to reproduce this behavior. Can you be more explicit about steps we could take to reproduce this consistently? If you right-click function node and select Refresh Node, are pins corrected?

1 Like

Hi .

When I use “refresh” it also returns wrong pins.

An if I delete function from graph and add it again, after compile it returns error.

Here is video:

https://www…com/watch?v=VVU-AwfKCTQ

Hey ,

I apologize, I didn’t read your post carefully enough. I was able to reproduce this after watching video and re-reading your post, and I can reproduce this in 4.6.1 as well as our internal build. I have entered bug report UE-7513 for developers, and I will let you know when I see any update on it. Thanks for report!

Hi ,

This has been fixed internally, and fix will appear in a future release (most likely 4.9). Thanks again for your report!

This may have been fixed as you say but here is some more info

In 4.8 preview 4, as you can see function call ‘A’ shows a duplicated return value when you return with rotator pins split in function ‘B’, and if you split return pins in function call you get duplicated pins for split return and rotator.

Hi Lucky,

Thanks for additional info! This is same basic problem reported, and it is fixed internally but fix won’t make it to 4.8. Most likely it will be 4.9.

I did a quick test in our internal build, and your setup works correctly: a split pin in a function input or output does not affect function call node, nor does reverse. So in your case, Return Node would be split, but function call would just be Rotation and wouldn’t show Rotation Pitch Yaw or Roll (unless you also split pin on function call).