* failure to initialize variables.
* Using a piece of memory after it is free
* Overflowing buffers or memory areas that are allocated for the variable. (without causing a GP fault)
* poor pointer arithmetic or initialization leaving the pointer in nomans land
* improper protection of non thread safe pieces of code.
* in multi-threaded: thread or pipe disruption.
FileIO and networking
* incorrect fileIO fault handling to use of incorrectly initialized file handles.
* incorrect handling of overflows and underflows of the stream
nothing else comes to mind at the moment will update later