Imported Upstream version 2.9.0
[debian/cc1111] / support / regression / tests / bug-2051348.c
1 /*
2         bug 2051348.
3 */
4
5 #include <testfwk.h>
6
7 #pragma disable_warning 85
8
9 typedef char BOOLEAN;\r
10 typedef signed char SHORTINT;
11 \r
12 void App_PutSprite (SHORTINT x, SHORTINT y, SHORTINT spr)
13 {
14 }\r
15 \r
16 static SHORTINT Labirint_objCell, Labirint_manX, Labirint_manY, Labirint_manDirX, Labirint_manDirY;\r
17 static BOOLEAN Labirint_manPresent;\r
18 \r
19 static SHORTINT Labirint_GetManSprite (void)
20 {
21         return(0);
22 }
23 \r
24 static BOOLEAN Labirint_ManCanGo (void)
25 {
26         return(0);
27 }
28 \r
29 static BOOLEAN Labirint_ManGoing (SHORTINT x, SHORTINT y)
30 {
31         return(0);
32 }
33 \r
34 static void Labirint_SetCell (SHORTINT x, SHORTINT y, SHORTINT cell)
35 {
36 }\r
37 \r
38 static void Labirint_TryMoveMan (void)\r
39 {\r
40         SHORTINT x, y, manSprite;\r
41         if (Labirint_ManCanGo()) {\r
42                 x = (Labirint_manX + Labirint_manDirX) + Labirint_manDirX;\r
43                 y = (Labirint_manY + Labirint_manDirY) + Labirint_manDirY;\r
44                 Labirint_manPresent = Labirint_ManGoing(x, y);\r
45                 if (!Labirint_manPresent) {\r
46                         return;\r
47                 }\r
48                 manSprite = Labirint_GetManSprite();\r
49                 Labirint_SetCell(x, y, manSprite);\r
50                 App_PutSprite(Labirint_manX, Labirint_manY, 0);
51                 // Assembly fails for the next two lines.\r
52                 Labirint_manX = Labirint_manX + Labirint_manDirX;\r
53                 Labirint_manY = Labirint_manY + Labirint_manDirY;\r
54         } else {\r
55                 manSprite = 4;\r
56         }\r
57         App_PutSprite(Labirint_manX, Labirint_manY, manSprite);\r
58 }
59
60 void
61 testBug2051348(void)
62 {
63         ASSERT(1);
64 }
65