dotnet / csharpstandard

Working space for ECMA-TC49-TG2, the C# standard committee.
Creative Commons Attribution 4.0 International
716 stars 84 forks source link

12 Inconsistency of dynamic binding description #118

Open jskeet opened 9 years ago

jskeet commented 9 years ago

Some sections - such as 13.13.1 and 13.11.1 - talk about dynamic binding, usually with the same kind of language.

Other sections - such as 13.14 and 13.15 - don't mention it at all. Do we want to fix this inconsistency?

(The conditional operator in 13.15 is interesting, as the precise behaviour would usually require knowledge of both the second and third operand types, to know whether or not to convert an operand into the overall type. However, for dynamic expressions that would require evaluating both of those operands, against the spirit of the operator. So presumably if either of those operands is dynamic, no conversions are performed? That's the sort of thing we should probably specify...)

jskeet commented 6 years ago

All comments prior to this one were before we removed section 7. I've updated the title only.

Nigel-Ecma commented 4 years ago

Note that currently 12.14 The null coalescing operator mentions dynamic while 12.15 Conditional operator does not. The former allows for the result type to be dynamic, the latter still does not mention dynamic.

This issue relates to dynamic and what ends up being evaluated so I'm putting into the dependency group: #119, #118, #117, #116