When implementing algorithmic optimizations (fast paths, binary search vs linear, prefetch/slot routing, realloc/compaction shortcuts), require semantic correctness and invariant preservation before performance.
Apply this standard:
endptr/“consumed input” behavior). Never accept partial parses just because a value (like nan) was detected.Example (parsing correctness guard):
// Rule: only accept nan(...) if the parse consumed the expected characters.
if (parsed && isnan(result)) {
if (endptr) *endptr = (char*)eptr;
// But also ensure the parse covered the full grammar for the token.
// If eptr != pend for an otherwise-invalid/partial nan(...), reject.
}
Example (overflow check matching operation):
// If overflow risk is in multiplication, check multiplication, not addition.
if (emission_interval_us > LLONG_MAX / num_requests) {
addReplyError(c, "overflow");
return;
}
Enter the URL of a public GitHub repository