Files
sdk/docs
Paul Berry e2fdd57664 Clarify ambiguous definition of constant interpolated string expressions.
The previous phrasing ("A constant expression is ... a literal string
where any interpolated expression is a compile-time constant ...") was
ambiguous: did it mean "... where at least one interpolated expression
is a compile-time constant ..." or did it mean "... where every
interpolated expression (if there are any) is a compile-time constant
..."?

Clearly the intended meaning is that all interpolated expressions are
required to be compile-time constants, otherwise we would allow
nonsense like this:

  void f(int i) {
    const x = 0;
    const s = "$x $i"; // Ok because x is const (!)
  }

Changing the word to "every" avoids the ambiguity.

Change-Id: I3a1dd38a8bc0dc9cddc7b504ea8e7de5afdf8990
Reviewed-on: https://dart-review.googlesource.com/74321
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-09-10 22:56:10 +00:00
..
2017-11-24 16:27:00 +00:00