<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
In m3front\src\misc\CG.m3:<BR>
 <BR>
PROCEDURE Compare (t: ZType;  op: Cmp) =<BR>  BEGIN<BR>    IF Force_pair (commute := TRUE) THEN<BR>      op := M3CG.SwappedCompare [op];<BR>    END;<BR>    cg.compare (t, Target.Integer.cg_type, op);<BR>    SPop (2, "Compare");<BR>    SPush (Type.Int32);<BR>  END Compare;<BR>
<BR> <BR>
compare(input type, output type, operation)<BR>
 <BR>
The integrated backend ignores the output type.<BR>
The gcc backend does not.<BR>
 <BR>
Doesn't it seem like in the above, Target.Integer and Int32 should match?<BR>
That compare is being asked to return a possibly larger result than the<BR>
front end expects?<BR>
 <BR>
 - Jay<BR>                                     </body>
</html>