Y
Yossi Kreinin
Hi!
Is there a summary of the rules C++ code should obey, but an implementation
doesn't have to verify it does? For example, the one definition rule or
the prohibition to dereference a null pointer. Such a summary could be
extracted from the standard, perhaps it already was?
There are also a lot of tools looking for SOME of such violations. Is there a tool
that could guarantee something like: "ALL compile-time violations will be spotted,
unless made by object code (and not source code); and at run-time, ANY violation
which actually occurs will be detected (but there might still be uncovered
cases of such violations)"? Is there something making it impossible?
In particular, is there a boundary checker which detects ALL boundary errors
(and not only when: uninitialized memory is read/the objects are on the heap/
arrays with length known at compile time are used/combinations of such)?
Thanks in advance!
Yossi
Is there a summary of the rules C++ code should obey, but an implementation
doesn't have to verify it does? For example, the one definition rule or
the prohibition to dereference a null pointer. Such a summary could be
extracted from the standard, perhaps it already was?
There are also a lot of tools looking for SOME of such violations. Is there a tool
that could guarantee something like: "ALL compile-time violations will be spotted,
unless made by object code (and not source code); and at run-time, ANY violation
which actually occurs will be detected (but there might still be uncovered
cases of such violations)"? Is there something making it impossible?
In particular, is there a boundary checker which detects ALL boundary errors
(and not only when: uninitialized memory is read/the objects are on the heap/
arrays with length known at compile time are used/combinations of such)?
Thanks in advance!
Yossi