* device/include/pic16/pic18fregs.h, src/pic16/devices.inc,
[fw/sdcc] / src / SDCCval.c
index f760c6a7e33f4076b1a18fcb02673440a7677238..0cb48884ee96fd2ddb0f545ee87bf95ff20e4ccc 100644 (file)
@@ -514,6 +514,7 @@ value *constVal (char *s)
     sval = strtoul (s, NULL, 0);
     dval=sval;
     if (errno) {
+      dval = 4294967295.0;
       werror (W_INVALID_INT_CONST, s, dval);
     }
   } else {
@@ -568,15 +569,15 @@ value *constVal (char *s)
 
   /* check for out of range */
   if (dval<-2147483648.0) {
-    dval = LONG_MIN;
+    dval = -2147483648.0;
     werror (W_INVALID_INT_CONST, s, dval);
   }
   if (dval>2147483647.0 && !SPEC_USIGN (val->type)) {
-    dval = LONG_MAX;
+    dval = 2147483647.0;
     werror (W_INVALID_INT_CONST, s, dval);
   }
   if (dval>4294967295.0) {
-    dval = ULONG_MAX;
+    dval = 4294967295.0;
     werror (W_INVALID_INT_CONST, s, dval);
   }