You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
e.g. track liveness with mallocs (what memory regions are currently live) along with memory accesses (am I accessing a region of memory that is currently live?)
General
Output commentary should have clear marking as not program output, e.g.:
==12345== some-message-from-Valgrind
Print a stack trace for each error and warning
When an error is reported, it is given the full commentary for only 1 instance, e.g.:
==25832== Invalid read of size 4
==25832== at 0x8048724: BandMatrix::ReSize(int, int, int) (bogon.cpp:45)
==25832== by 0x80487AF: main (bogon.cpp:66)
==25832== Address 0xBFFFF74C is not stack'd, malloc'd or free'd
==25832== Invalid read of size 4
==25832== at 0x8048724: BandMatrix::ReSize(int, int, int) (bogon.cpp:45)
==25832== by 0x80487DD: main (bogon.cpp:69)
Give errors in the order users should fix them
For example, a program which copies uninitialised values to several memory locations, and later uses them, will generate several error messages. The first such error message should give the most direct clue to the root cause of the problem.
Have a quiet mode that only outputs errors (not warnings)
Create option to stop after a certain number of errors
Timestamp option using sys.time or similar
Memcheck
Invalid read: say size, memory location, and where in the code it is
A comment is given for what the likely error cause is
Output the error before the code executes, as it will likely segfault
Set a limit for the number of errors you collect in order to not bloat it
Have toggleable warnings for unsafe things (incrementing pointers and the like)
Create option to stop after a certain number of errors
The text was updated successfully, but these errors were encountered:
e.g. track liveness with mallocs (what memory regions are currently live) along with memory accesses (am I accessing a region of memory that is currently live?)
General
Memcheck
The text was updated successfully, but these errors were encountered: