Add PointerObjectNULL and PointerObjectMismatch errors to prepare for upcoming pointer object tracking.
Add methods for tracking in-memory pointer objects (i.e. the pointed-to object of an in-memory pointer).

Note that this is not yet used.
Don't archive the trace if output is not enabled (this would cause non-tracing child processes to archive their parent's trace).
Add pointer object error-checking method checkPointer() to RuntimeErrorChecker.

Add pointer object tracking for Instructions and Arguments to TracedFunction.

Extract Argument pointer objects from the parent's CallInst when entering a new Function.

Set argv's Argument's pointer object in notifyArgs(), and the in-memory pointer objects for argv[0]..argv[argc-1]. Also do this for envp in notifyEnv().

Check pointer usage in PreLoad and PreStore.

When loading pointer values, get the pointer object from in-memory and set it on the load Instruction.

When storing pointer values, take the pointer object from the stored Value and set it in-memory.

Transfer pointer objects from the appropriate operand when performing GetElementPtrInst.
Add pointer object tracking for intercepted functions.
Add pointer object tracking for detect calls based standard functions.
Merge upstream development.
Disable reporting of pointer object errors until the tracking is complete.