Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F102796558
D43254.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D43254.diff
View Options
diff --git a/lib/libc/stdlib/div.c b/lib/libc/stdlib/div.c
--- a/lib/libc/stdlib/div.c
+++ b/lib/libc/stdlib/div.c
@@ -41,34 +41,6 @@
r.quot = num / denom;
r.rem = num % denom;
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
- /*
- * The ANSI standard says that |r.quot| <= |n/d|, where
- * n/d is to be computed in infinite precision. In other
- * words, we should always truncate the quotient towards
- * 0, never -infinity.
- *
- * Machine division and remainer may work either way when
- * one or both of n or d is negative. If only one is
- * negative and r.quot has been truncated towards -inf,
- * r.rem will have the same sign as denom and the opposite
- * sign of num; if both are negative and r.quot has been
- * truncated towards -inf, r.rem will be positive (will
- * have the opposite sign of num). These are considered
- * `wrong'.
- *
- * If both are num and denom are positive, r will always
- * be positive.
- *
- * This all boils down to:
- * if num >= 0, but r.rem < 0, we got the wrong answer.
- * In that case, to get the right answer, add 1 to r.quot and
- * subtract denom from r.rem.
- */
- if (num >= 0 && r.rem < 0) {
- r.quot++;
- r.rem -= denom;
- }
-#endif
+
return (r);
}
diff --git a/lib/libc/stdlib/imaxdiv.c b/lib/libc/stdlib/imaxdiv.c
--- a/lib/libc/stdlib/imaxdiv.c
+++ b/lib/libc/stdlib/imaxdiv.c
@@ -36,11 +36,6 @@
retval.quot = numer / denom;
retval.rem = numer % denom;
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
- if (numer >= 0 && retval.rem < 0) {
- retval.quot++;
- retval.rem -= denom;
- }
-#endif
+
return (retval);
}
diff --git a/lib/libc/stdlib/ldiv.c b/lib/libc/stdlib/ldiv.c
--- a/lib/libc/stdlib/ldiv.c
+++ b/lib/libc/stdlib/ldiv.c
@@ -43,11 +43,6 @@
r.quot = num / denom;
r.rem = num % denom;
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
- if (num >= 0 && r.rem < 0) {
- r.quot++;
- r.rem -= denom;
- }
-#endif
+
return (r);
}
diff --git a/lib/libc/stdlib/lldiv.c b/lib/libc/stdlib/lldiv.c
--- a/lib/libc/stdlib/lldiv.c
+++ b/lib/libc/stdlib/lldiv.c
@@ -36,11 +36,6 @@
retval.quot = numer / denom;
retval.rem = numer % denom;
-#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
- if (numer >= 0 && retval.rem < 0) {
- retval.quot++;
- retval.rem -= denom;
- }
-#endif
+
return (retval);
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Mon, Nov 18, 7:46 AM (22 h, 29 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14692802
Default Alt Text
D43254.diff (2 KB)
Attached To
Mode
D43254: libc: Remove support for pre-C11 C standards
Attached
Detach File
Event Timeline
Log In to Comment