summaryrefslogtreecommitdiff
path: root/test/files/neg/t7848-interp-warn.scala
diff options
context:
space:
mode:
authorSom Snytt <som.snytt@gmail.com>2016-03-23 11:23:41 -0700
committerSom Snytt <som.snytt@gmail.com>2016-03-23 11:23:41 -0700
commit75cfd808aec7cd94ab3e2c13ffd4821887de6ddd (patch)
tree787bc3b522632261f7a8ee43dbc50b0b648ab7b8 /test/files/neg/t7848-interp-warn.scala
parent275305a3d291cca49163903b5b6fe1d496b507a6 (diff)
downloadscala-75cfd808aec7cd94ab3e2c13ffd4821887de6ddd.tar.gz
scala-75cfd808aec7cd94ab3e2c13ffd4821887de6ddd.tar.bz2
scala-75cfd808aec7cd94ab3e2c13ffd4821887de6ddd.zip
SI-9314 No warn on ${nonid}
Use the sym test on an expr that happens to be a subset of idents and is not in scope. Other `${ operator_* }` warn.
Diffstat (limited to 'test/files/neg/t7848-interp-warn.scala')
-rw-r--r--test/files/neg/t7848-interp-warn.scala13
1 files changed, 10 insertions, 3 deletions
diff --git a/test/files/neg/t7848-interp-warn.scala b/test/files/neg/t7848-interp-warn.scala
index 635dd48c27..ceaf6c7d67 100644
--- a/test/files/neg/t7848-interp-warn.scala
+++ b/test/files/neg/t7848-interp-warn.scala
@@ -15,16 +15,23 @@ object Test {
def bar = "bar"
def f = {
val foo = "bar"
- "An important $foo message!"
+ "An important $foo message!" // warn on ident in scope
}
def g = {
val foo = "bar"
- "A doubly important ${foo * 2} message!"
+ "A doubly important ${foo * 2} message!" // warn on some expr, see below
}
def h = s"Try using '$$bar' instead." // no warn
def i = s"Try using '${ "$bar" }' instead." // was: no warn on space test
def j = s"Try using '${ "something like $bar" }' instead." // warn
def k = f"Try using '$bar' instead." // no warn on other std interps
def p = "Template ${} {}" // no warn on unlikely or empty expressions
- def q = "${}$bar" // disables subsequent checks!
+ def q = "${}$bar" // disables subsequent checks! (a feature)
+ def r = "${}${bar}" // disables subsequent checks! (a feature)
+
+ def v = "${baz}${bar}" // warn on second expr
+ def w = "${ op_* }" // warn, only cheap ident parsing
+ def x = "${ bar }" // warn, a cheap ident in scope
+ def y = "${ baz }" // no warn, cheap ident not in scope
+ def z = "${ baz * 3}" // warn, no expr parsing
}