... >> Index: gcc/c-family/c-common.c >> =================================================================== >> --- gcc/c-family/c-common.c (revision 231903) >> +++ gcc/c-family/c-common.c (working copy) >> @@ -7667,6 +7667,6 @@ >> >> if (error_operand_p (align)) >> return -1; >> if (TREE_CODE (align) != INTEGER_CST >> || !INTEGRAL_TYPE_P (TREE_TYPE (align))) >> { > No changes in this hunk. I assume you hand-edited the patch to remove > something that you really didn't intend to submit and left the above > useless hunk. That's right. It doesn't look like Emacs Diff mode is smart enough to handle these types of edits. I've removed the hunk from the updated patch. > The patch itself is fine for the trunk. Thanks. Unfortunately, I had missed a set of important use cases that are apparently not exercised by the test suite: __sync_bool_compare_and_swap, __sync_val_compare_and_swap, __sync_lock_test_and_set, and __sync_lock_release are valid for _Bool and must not be rejected. I've corrected the handling of those in the attached patch and added tests for them. Martin