aboutsummaryrefslogtreecommitdiff
path: root/tests/tests2/89_nocode_wanted.c
diff options
context:
space:
mode:
authorgrischka <grischka>2017-02-13 19:03:29 +0100
committergrischka <grischka>2017-02-13 19:03:29 +0100
commit43d9a7de9b83f437d55c2cbc6e9625e3fafa5102 (patch)
tree5890bbdeebd2bec986afd99f51f624c652a915a9 /tests/tests2/89_nocode_wanted.c
parent13056da039240a1d418335f6e0506a89fb2d8495 (diff)
downloadtinycc-43d9a7de9b83f437d55c2cbc6e9625e3fafa5102.tar.gz
tinycc-43d9a7de9b83f437d55c2cbc6e9625e3fafa5102.tar.bz2
updates & cleanups (tcc-doc/Changelog/TODO ...)
- tcc-doc.texi: commandline option info update - Changelog/TODO: update - tests/tcctest.py: removed - tests/Makefile: weaktest fixed - tests/tests2: some files renamed and/or converted to unix LF - configure/Makefile: --enable-static option (no dll on win32) - win32/build-tcc.bat: msvc support - win32/tcc-win32.txt: build info update - win32/vs2015/: VS solution removed - win32/include/tcc/tcc_libm.h: #include statement fixed - tcc.c: -include <file> option help info - .gitignore: cleanup
Diffstat (limited to 'tests/tests2/89_nocode_wanted.c')
-rw-r--r--tests/tests2/89_nocode_wanted.c112
1 files changed, 112 insertions, 0 deletions
diff --git a/tests/tests2/89_nocode_wanted.c b/tests/tests2/89_nocode_wanted.c
new file mode 100644
index 0000000..73e0a4b
--- /dev/null
+++ b/tests/tests2/89_nocode_wanted.c
@@ -0,0 +1,112 @@
+extern int printf(const char *format, ...);
+static void kb_wait_1(void)
+{
+ unsigned long timeout = 2;
+ do {
+ (1 ?
+ printf("timeout=%ld\n", timeout) :
+ ({
+ while (1)
+ printf("error\n");
+ })
+ );
+ timeout--;
+ } while (timeout);
+}
+static void kb_wait_2(void)
+{
+ unsigned long timeout = 2;
+ do {
+ (1 ?
+ printf("timeout=%ld\n", timeout) :
+ ({
+ for (;;)
+ printf("error\n");
+ })
+ );
+ timeout--;
+ } while (timeout);
+}
+static void kb_wait_2_1(void)
+{
+ unsigned long timeout = 2;
+ do {
+ (1 ?
+ printf("timeout=%ld\n", timeout) :
+ ({
+ do {
+ printf("error\n");
+ } while (1);
+ })
+ );
+ timeout--;
+ } while (timeout);
+}
+static void kb_wait_2_2(void)
+{
+ unsigned long timeout = 2;
+ do {
+ (1 ?
+ printf("timeout=%ld\n", timeout) :
+ ({
+ label:
+ printf("error\n");
+ goto label;
+ })
+ );
+ timeout--;
+ } while (timeout);
+}
+static void kb_wait_3(void)
+{
+ unsigned long timeout = 2;
+ do {
+ (1 ?
+ printf("timeout=%ld\n", timeout) :
+ ({
+ int i = 1;
+ goto label;
+ i = i + 2;
+ label:
+ i = i + 3;
+ })
+ );
+ timeout--;
+ } while (timeout);
+}
+static void kb_wait_4(void)
+{
+ unsigned long timeout = 2;
+ do {
+ (1 ?
+ printf("timeout=%ld\n", timeout) :
+ ({
+ switch(timeout) {
+ case 2:
+ printf("timeout is 2");
+ break;
+ case 1:
+ printf("timeout is 1");
+ break;
+ default:
+ printf("timeout is 0?");
+ break;
+ };
+ // return;
+ })
+ );
+ timeout--;
+ } while (timeout);
+}
+int main()
+{
+ printf("begin\n");
+ kb_wait_1();
+ kb_wait_2();
+ kb_wait_2_1();
+ kb_wait_2_2();
+ kb_wait_3();
+ kb_wait_4();
+ printf("end\n");
+ return 0;
+}