* convert non-constant enums in in-expressions to longint if we use the

generic jumps code

git-svn-id: branches/jvmbackend@18697 -
This commit is contained in:
Jonas Maebe 2011-08-20 08:25:33 +00:00
parent 478a0376e3
commit c8c75d7e1d

View File

@ -68,9 +68,13 @@ implementation
begin
if right.nodetype=setconstn then
tjvmsetconstnode(right).setconsttype:=sct_notransform;
if isenum and
(left.nodetype=ordconstn) then
tjvmordconstnode(left).enumconstok:=true;
if isenum then
if (left.nodetype=ordconstn) then
tjvmordconstnode(left).enumconstok:=true
else
{ not very clean, since we now have "longint in enumset", but
the code generator doesn't really mind }
inserttypeconv_explicit(left,s32inttype);
end;
result:=inherited pass_1;
if assigned(result) then