// RUN: %clang_cc1 -triple i386-unknown-unknown -O3 -emit-llvm -o - %s | FileCheck %s // PR2001 /* Test that the result of the assignment properly uses the value *in the bitfield* as opposed to the RHS. */ static int foo(int i) { struct { int f0 : 2; } x; return (x.f0 = i); } int bar() { // CHECK: ret i32 1 return foo(-5) == -1; }