1 // { dg-do assemble  }
2 // { dg-options "-Wall -Wno-register" }
3 
4 enum tristate { no = -1, maybe, yes };
5 
6 tristate
tristate_satisfies(register tristate const t1,register tristate const t2)7 tristate_satisfies (register tristate const t1, register tristate const t2)
8 {
9   switch (t1)
10     {
11     case no:
12       return (tristate) -t2;
13     case maybe:
14       return yes;
15     case yes:
16       return t2;
17     }
18   return maybe;
19 }
20