You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Copy and update record expression doesn't compile when the record comes from a function #18062
In some cases, I can't use the with keyword to copy and update a record with the F# 7 nested records shortcut syntax, when the source record comes from a function call (but in some situations it compiles fine).
It seems the compiler gets somehow confused... (?)
changed the title [-]Copy and update record expression doesn't compile when using a function output[/-][+]Copy and update record expression doesn't compile when the record comes from a function[/+]on Nov 26, 2024
It is a real issue.
The compiler has a bug and mismatches the types on the cascade of nesting.
Even when you try to eliminate access path from the left, it always comes with a different error message instead.
Also, in this case, even putting parens arond the "func()" invocation does not help.
When reducing this down to a smallest repro, this only appears when having a 3 or mor records.
When reducing the sample down to 2 records only, the nested syntax works without issues even with function invocation.
Activity
[-]Copy and update record expression doesn't compile when using a function output[/-][+]Copy and update record expression doesn't compile when the record comes from a function[/+]T-Gro commentedon Nov 27, 2024
It is a real issue.
The compiler has a bug and mismatches the types on the cascade of nesting.
Even when you try to eliminate access path from the left, it always comes with a different error message instead.
Also, in this case, even putting parens arond the "func()" invocation does not help.
When reducing this down to a smallest repro, this only appears when having a 3 or mor records.
When reducing the sample down to 2 records only, the nested syntax works without issues even with function invocation.
https://sharplab.io/#v2:DYLgZgzgNALiCGEC2AfA9gBwKYDsAEAygJ4QxZICwAUNdTEdngJI45YBOeAvHgN4AaIAJY4YAXzoMseALJCAJvODSevJiBZt2EqvUYB5AK5lOqmSDmLlO6spiF4SDMu58ZrtR/6uArGP+2WPYA5kEEjs5YABQAlK7hTsq0VHZ4aADWACpYpB4JkXgA7kIwABayAHRMFd48ACwATDqp8MAQaPoA0q7UeH14qWCGOADGsfERyhUyvf28Q6N448VlzDWudQDMYn2zuylBeGDwQsAiwdm5PHsDhwsjS3E8+UlU/Xz3j0Ul5TJV6/Vtu8gA==
0101 commentedon Dec 2, 2024
@kerams does this ring a bell by any chance?