diff --git a/compiler/jvm/njvmcnv.pas b/compiler/jvm/njvmcnv.pas index 013c72c486..d37dd080be 100644 --- a/compiler/jvm/njvmcnv.pas +++ b/compiler/jvm/njvmcnv.pas @@ -1192,10 +1192,11 @@ implementation else checkdef:=node.right.resultdef; { replace special types with their equivalent class type } + if (checkdef.typ=pointerdef) and + jvmimplicitpointertype(tpointerdef(checkdef).pointeddef) then + checkdef:=tpointerdef(checkdef).pointeddef; if checkdef=voidpointertype then checkdef:=java_jlobject - else if checkdef.typ=pointerdef then - checkdef:=tpointerdef(checkdef).pointeddef else if checkdef.typ=enumdef then checkdef:=tenumdef(checkdef).classdef else if checkdef.typ=setdef then