* src/SDCCval.c (checkConstantRange): added
[fw/sdcc] / support / Util / SDCCerr.c
index 93cd49653647a2fef57690b2dace6080e12a76d9..6839b417bde682f632b2dd0904050dd297c2dfc3 100644 (file)
@@ -237,8 +237,8 @@ struct
    "Functions called via pointers must be 'reentrant' to take arguments" },
 { W_DOUBLE_UNSUPPORTED, ERROR_LEVEL_WARNING,
    "type 'double' not supported assuming 'float'" },
-{ W_IF_NEVER_TRUE, ERROR_LEVEL_WARNING,
-   "if-statement condition always false, if-statement not generated" },
+{ W_COMP_RANGE, ERROR_LEVEL_WARNING,
+   "comparison is always %s due to limited range of data type" },
 { W_FUNC_NO_RETURN, ERROR_LEVEL_WARNING,
    "no 'return' statement found for function '%s'" },
 { W_PRE_PROC_WARNING, ERROR_LEVEL_WARNING,
@@ -367,8 +367,8 @@ struct
     "symbol name too long, truncated to %d chars" },
 { W_CAST_STRUCT_PTR,ERROR_LEVEL_WARNING,
          "cast of struct %s * to struct %s * " },
-{ W_IF_ALWAYS_TRUE, ERROR_LEVEL_WARNING,
-    "if-statement condition always true, if-statement not generated" },
+{ W_LIT_OVERFLOW, ERROR_LEVEL_WARNING,
+    "overflow in implicit constant conversion" },
 { E_PARAM_NAME_OMITTED, ERROR_LEVEL_ERROR,
     "in function %s: name omitted for parameter %d" },
 { W_NO_FILE_ARG_IN_C1, ERROR_LEVEL_WARNING,
@@ -418,6 +418,20 @@ struct
    "ISR function attribute 'shadowregs' following non-ISR function '%s'" },
 { W_SFR_ABSRANGE, ERROR_LEVEL_WARNING,
    "absolute address for sfr '%s' probably out of range." },
+{ E_BANKED_WITH_CALLEESAVES, ERROR_LEVEL_ERROR,
+   "Both banked and callee-saves cannot be used together." },
+{ W_INVALID_INT_CONST, ERROR_LEVEL_WARNING,
+   "integer constant '%s' out of range, truncated to %.0lf." },
+{ W_CMP_SU_CHAR, ERROR_LEVEL_PEDANTIC,
+   "comparison of 'signed char' with 'unsigned char' requires promotion to int" },
+{ W_INVALID_FLEXARRAY, ERROR_LEVEL_WARNING,
+   "invalid use of structure with flexible array member" },
+{ W_C89_NO_FLEXARRAY, ERROR_LEVEL_PEDANTIC,
+   "ISO C90 does not support flexible array members" },
+{ E_FLEXARRAY_NOTATEND, ERROR_LEVEL_ERROR,
+   "flexible array member not at end of struct" },
+{ E_FLEXARRAY_INEMPTYSTRCT, ERROR_LEVEL_ERROR,
+   "flexible array in otherwise empty struct" },
 };
 
 /*