This is a minor improvement, when printing the result of a boolean expression. Right now, GDB prints: (gdb) print 1 = 2 $1 = 0 (gdb) print 3 = 3 $2 = 1 The result should be of type boolean, which means either true or false. So the expected output is: (gdb) print 1 = 2 $1 = false (gdb) print 3 = 3 $2 = true The attached patches fixes it. 2007-12-27 Paul Hilfinger * ada-lang.c (ada_evaluate_subexp): Add cases for BINOP_LOGICAL_AND, BINOP_LOGICAL_OR, UNOP_LOGICAL_NOT, BINOP_BITWISE_IOR, BINOP_BITWISE_XOR, BINOP_BITWISE_AND. * language.c (lang_bool_type): Add Ada case. Tested on x86-linux. Checked in. In addition, I have written a small testcase for it: 2007-12-27 Joel Brobecker * gdb.ada/boolean_expr.exp: New testcase. Also tested on x86-linux. Fails without the ada-lang.c patch. -- Joel