* src/SDCCsymt.c (computeType): added optimization for 'cond ? true : false'
[fw/sdcc] / src / SDCCsymt.c
index 0870e7e409d5c6eabf01e6b8f76d84d422430620..8e0f402f0c80d5f55c46e027f7c99807a3c8b962 100644 (file)
@@ -1904,6 +1904,17 @@ computeType (sym_link * type1, sym_link * type2,
 
   switch (resultType)
     {
+      case RESULT_TYPE_IFX:
+        if (TARGET_IS_HC08)
+          break;
+        //fallthrough
+      case RESULT_TYPE_BIT:
+        if (op == ':')
+          {
+            SPEC_NOUN (reType) = V_BIT;
+            return rType;
+          }
+        break;
       case RESULT_TYPE_CHAR:
         if (IS_BITVAR (reType))
           {