Add __builtin_object_size() checks to string and memory primitives
See the GCC documentation. Clang appears to support it as well.
We should add
__builtin_object_size() checks to any API which could conceivably have a buffer overflow. Typically this will be the string and memory APIs, but other candidates could be
GBytes and the streaming I/O APIs.
Try and get this in early in 2.60 so that any fallout on other modules is caught soon.