Edit: Apologies for posting a duplicate and such a basic question! I thought it was a trickier one than it actually was, and failed to discover the cited article in my original search.
For the language standard experts out there, is the value of an expression like:
(a=1, b=2, c=3)
... defined? From my tests, it appears that all of our compilers evaluate this expression as 3
(GCC, MSVC, Clang).
However, I'm not sure if we should lean on this behavior. I have no intention of writing code like this, but encountered some obscure code which was leaning on this behavior with multiple assignment in a conditional, and was wondering if it was well-defined.