* device/lib/mcs51/crtxinit.asm: added disabled version for dual dptr
[fw/sdcc] / support / regression / tests / enum.c
index 19e0fdb2e4b5ad5234d6f31ba6d28cbd65b65a12..8dd23623aa5b0ec7576a1641e2621cb844ad125e 100644 (file)
@@ -19,11 +19,18 @@ enum _ValuesEnum {
 enum _IndexedEnum {
   INDEXED_ZERO,
   INDEXED_ONE,
-  /* PENDING: Fails */
-  //INDEXED_ONE_ALIAS = INDEXED_ONE,
-  INDEXED_TWO
+  INDEXED_ONE_ALIAS = INDEXED_ONE,
+  INDEXED_TWO,
+  INDEXED_THREE,
+  INDEXED_MATH = INDEXED_ONE_ALIAS + INDEXED_TWO * INDEXED_THREE
+
 };
 
+volatile enum _IntEnum {
+  INT_256 = 256,
+  INT_ZERO = 0
+} ie;
+
 void
 testSimpleEnum(void)
 {
@@ -47,6 +54,19 @@ testIndexedEnum(void)
 {
   ASSERT(INDEXED_ZERO == 0);
   ASSERT(INDEXED_ONE == 1);
-  //  ASSERT(INDEXED_ONE_ALIAS == 1);
+  ASSERT(INDEXED_ONE_ALIAS == 1);
   ASSERT(INDEXED_TWO == 2);
+  ASSERT(INDEXED_MATH == 7);
+}
+
+void
+testIntEnum(void)
+{
+  ASSERT(INT_ZERO == 0);
+  ASSERT(INT_256 == 256);
+
+  ie = INT_ZERO;
+  ASSERT(ie == INT_ZERO);
+  ie = INT_256;
+  ASSERT(ie == INT_256);
 }