From 1b454185c44a0817a1f30c3d93a91b16805ce84b Mon Sep 17 00:00:00 2001 From: Som Snytt Date: Tue, 3 Dec 2013 13:31:13 -0800 Subject: SI-8013 Nowarn on macro str interpolation When warning about stray "foo $bar" under `-Xlint`, which may be missing an interpolator id, suppress the warning if we're in the middle of a macro expansion, since we have no useful heuristic to apply to the expanded tree. The test for whether the string is part of an expanded tree is to check all open macros for an expanded tree that contains the literal tree under scrutiny. (This is deemed more paranoid than looking for a macro application that is an enclosing position.) --- test/files/pos/t8013/inpervolated_2.scala | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 test/files/pos/t8013/inpervolated_2.scala (limited to 'test/files/pos/t8013/inpervolated_2.scala') diff --git a/test/files/pos/t8013/inpervolated_2.scala b/test/files/pos/t8013/inpervolated_2.scala new file mode 100644 index 0000000000..90e571b42c --- /dev/null +++ b/test/files/pos/t8013/inpervolated_2.scala @@ -0,0 +1,11 @@ +/* + * scalac: -Xfatal-warnings -Xlint + */ +package t8013 + +// unsuspecting user of perverse macro +trait User { + import Perverse.Impervolator + val foo = "bar" + Console println p"Hello, $foo" +} -- cgit v1.2.3