2 /* Testcase by Martin Michlmayr <tbm@cyrius.com> */
4 /* { dg-do compile } */
5 /* { dg-options "-O3 --param max-partial-antic-length=0" } */
7 static int pendingCommand
;
8 static int currentModifiers
;
11 int (*updateKeys
) (int *keyPressed
);
14 static const ProtocolOperations
*protocol
;
16 brl_readCommand (void)
18 unsigned long int keys
;
21 unsigned char routingKeys
[200];
23 signed char rightVerticalSensor
;
24 if (pendingCommand
!= (-1))
28 if (!protocol
->updateKeys (&keyPressed
))
30 if (rightVerticalSensor
>= 0)
32 if ((routingKeyCount
== 0) && keys
)
36 doChord
:switch (keys
);
54 if (currentModifiers
& (0X0010 | 0X0200))
56 if (currentModifiers
& 0X0040)
58 if (currentModifiers
& 0X0100)
60 if (currentModifiers
& 0X0400)
62 if (currentModifiers
& 0X0800)
65 unsigned char key1
= routingKeys
[0];
71 currentModifiers
|= 0X0010;