Merge branch 'fix-cgcc-gendeps' into tip

* cgcc: -MF, -MQ & -MT need an argument
* cgcc: gendeps for -MM, -MD & -MMD too
diff --git a/cgcc b/cgcc
index e64e8c1..e0be589 100755
--- a/cgcc
+++ b/cgcc
@@ -273,7 +273,7 @@
 	    ' -D__NetBSD__=1';
     } elsif ($spec eq 'darwin') {
 	return
-	    ' -D__APPLE__=1 -D__MACH__=1';
+	    ' -D__APPLE__=1 -D__APPLE_CC__=1 -D__MACH__=1';
     } elsif ($spec eq 'gnu') {		# Hurd
 	return &add_specs ('unix') .	# So, GNU is Unix, uh?
 	    ' -D__GNU__=1 -D__gnu_hurd__=1 -D__MACH__=1';
diff --git a/evaluate.c b/evaluate.c
index e4d6b73..2fd19ff 100644
--- a/evaluate.c
+++ b/evaluate.c
@@ -2216,7 +2216,7 @@
 	if (is_bool_type(type)) {
 		if (Wsizeof_bool)
 			warning(expr->pos, "expression using sizeof _Bool");
-		size = bits_in_char;
+		size = bits_to_bytes(bits_in_bool) * bits_in_char;
 	}
 
 	if (is_function(type->ctype.base_type)) {
diff --git a/validation/c11-noreturn.c b/validation/c11-noreturn.c
index bc20de8..d20a224 100644
--- a/validation/c11-noreturn.c
+++ b/validation/c11-noreturn.c
@@ -5,5 +5,5 @@
  * check-command: test-parsing -std=c11 $file
  *
  * check-output-ignore
- * check-output-contains: \[noreturn\]
+ * check-output-contains: \\[noreturn\\]
  */
diff --git a/validation/c11-thread-local.c b/validation/c11-thread-local.c
index 464c3e1..db848de 100644
--- a/validation/c11-thread-local.c
+++ b/validation/c11-thread-local.c
@@ -5,5 +5,5 @@
  * check-command: test-parsing -std=c11 $file
  *
  * check-output-ignore
- * check-output-contains: \[tls\]
+ * check-output-contains: \\[tls\\]
  */