authorBenjamin Kosnik <bkoz@gcc.gnu.org>
Wed, 25 Mar 1998 14:11:13 +0000 (14:11 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Wed, 25 Mar 1998 14:11:13 +0000 (14:11 +0000)
test cases for g++15235

From-SVN: r18830

gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C [new file with mode: 0644]

diff --git a/gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C b/gcc/testsuite/g++.old-deja/g++.benjamin/bool02.C
new file mode 100644 (file)
index 0000000..c17c935
--- /dev/null
@@ -0,0 +1,63 @@
+//980324 bkoz
+//test for bool and bitwise ands
+
+#include <assert.h>
+
+
+void bar ( bool  x ) {};
+void bars ( short  x ) {};
+
+#if 0
+int andb(){
+  bool y;
+  bar ( y );
+  int blob = ( 27 & int (y) );
+  return blob; //expect 1 or 0
+}
+#endif
+
+int andbtrue(){
+  bool y = true;
+  bar ( y );
+  int blob = ( 27 & int (y) );
+  return blob; //expect 1
+}
+
+int andbfalse(){
+  bool y = false;
+  bar ( y );
+  int blob = ( 27 & int (y) );
+  return blob; //expect 0
+}
+
+int andbfalse2(){
+  bool y = 0;
+  bar ( y );
+  int blob = ( 27 & int (y) );
+  return blob;  //expect 0
+}
+
+int ands(){
+  short y = 1;
+  bars ( y );
+  int blob = ( 27 & int (y) );
+  return blob;  //expect 1
+}
+
+
+int main() {
+  int tmp;
+#if 0
+  tmp = andb();
+  assert (tmp == 1 || tmp == 0);
+#endif
+  tmp = andbtrue();
+  assert (tmp == 1);
+  tmp = andbfalse();
+  assert (tmp == 0);
+  tmp = andbfalse2();
+  assert (tmp == 0);
+  tmp = ands();
+  assert (tmp == 1);
+  return 0;
+}