summary refs log tree commit diff stats
path: root/tinyc/tests/tests2/50_logical_second_arg.c
diff options
context:
space:
mode:
Diffstat (limited to 'tinyc/tests/tests2/50_logical_second_arg.c')
-rw-r--r--tinyc/tests/tests2/50_logical_second_arg.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/tinyc/tests/tests2/50_logical_second_arg.c b/tinyc/tests/tests2/50_logical_second_arg.c
new file mode 100644
index 000000000..ddec08c87
--- /dev/null
+++ b/tinyc/tests/tests2/50_logical_second_arg.c
@@ -0,0 +1,29 @@
+#include <stdio.h>
+
+int fred()
+{
+   printf("fred\n");
+   return 0;
+}
+
+int joe()
+{
+   printf("joe\n");
+   return 1;
+}
+
+int main()
+{
+   printf("%d\n", fred() && joe());
+   printf("%d\n", fred() || joe());
+   printf("%d\n", joe() && fred());
+   printf("%d\n", joe() || fred());
+   printf("%d\n", fred() && (1 + joe()));
+   printf("%d\n", fred() || (0 + joe()));
+   printf("%d\n", joe() && (0 + fred()));
+   printf("%d\n", joe() || (1 + fred()));
+
+   return 0;
+}
+
+/* vim: set expandtab ts=4 sw=3 sts=3 tw=80 :*/