•Problem:
–many hard-to-find bugs are due to null pointers,
out-of-bounds accesses,
pointer arithmetic.
•Solution:
–make C type-safe (like Java): insert run-time checks.
–but you pay for safety with huge run-time overhead:
•in time: tun-time checks are costly
•in space: must enrich pointers with extra run-time info
–to reduce overhead in
•… time, remove run-time checks that never fail.
•… space, avoid extra information for pointers that are
used safely.
•Papers:
•