The build now works correctly under clang; usefully, it seems to make
the intermittently-working permute test fail more reliably. It's always
nice to get the opinion of a second compiler!
typedef int bool;
# endif
# else
-typedef _Bool bool
+typedef _Bool bool;
# endif
# define true 1
# define false 0
typedef int bool;
# endif
# else
-typedef _Bool bool
+typedef _Bool bool;
# endif
# define true 1
# define false 0
; Reducing constants inside a C or operation can help to recognize idioms
[cfoldintoorinand]
-(((_1) | #{(x != x & x3)}2) & #{1}3)->(((_1) | #{x2 & x3}0) & _3)
+(((_1) | #{(x != (x & x3))}2) & #{1}3)->(((_1) | #{x2 & x3}0) & _3)
; Binary bitwise optimizations
[cbinand]