On Fri, 2009-08-14 at 08:05 +0200, Christoph Spiel wrote:
> Hi Elnatan!
>
> > CIL mistakenly casts the operands of && and || to intType, when in
> > fact they are only required to have scalar type. This can lead to a
> > bug if the operands have type larger than int and have values which
> > trunc
Here is a reduced testcase:
int p(int a) {
int x = 0, y = 1;
(a ? x : y) = ({ 2; goto l ; l: 3;});
return x;
}
All the best,
Roberto
--
Prof. Roberto Bagnara
Computer Science Group
Department of Mathematics, University of Parma, Italy
http://www.cs.unipr.it/~bagnara/
mailto:bagn.