aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2016-05-24 14:44:54 +0200
committerFelix Mulder <felix.mulder@gmail.com>2016-05-26 13:20:10 +0200
commita06d2ab776ecfd5c1b48773032e071e871531760 (patch)
treed11e7badade27e9fe8ac1a53e9f953b7d93a1d22 /src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala
parentefee4faad746736c41d60ab0b488b615e7b54ed4 (diff)
downloaddotty-a06d2ab776ecfd5c1b48773032e071e871531760.tar.gz
dotty-a06d2ab776ecfd5c1b48773032e071e871531760.tar.bz2
dotty-a06d2ab776ecfd5c1b48773032e071e871531760.zip
Fix primitive rewriting
Diffstat (limited to 'src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala')
-rw-r--r--src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala b/src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala
index a8d5b7685..03ebb9515 100644
--- a/src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala
+++ b/src/dotty/tools/dotc/transform/IsInstanceOfEvaluator.scala
@@ -82,7 +82,7 @@ class IsInstanceOfEvaluator extends MiniPhaseTransform { thisTransformer =>
* `srutinee.isInstanceOf[Selector]` if `scrutinee eq null`
*/
def rewrite(tree: Select, to: Boolean): Tree =
- if (!to || tree.qualifier.tpe.widen.isPrimitiveValueType)
+ if (!to || !tree.qualifier.tpe.widen.derivesFrom(defn.AnyRefAlias))
Literal(Constant(to))
else
Apply(tree.qualifier.select(defn.Object_ne), List(Literal(Constant(null))))