Next: Message Number Conflicts Up: Using BlockSolve Previous: Solving the Linear

Error Checking within BlockSolve

BlockSolve uses the error-checking system defined in the Chameleon package. If BlockSolve is compiled with the flag DEBUG_ALLdefined, then if an internal error occurs (such as a failed malloc() call), BlockSolve returns to the user and the error code can be checked with the macros available in Chameleon (see the Chameleon manual for more information on the error checking system). If BlockSolve is compiled with DEBUG_TRACEBACKin addition to DEBUG_ALL, then error messages are printed by the routines that encounter the errors, along with routine names and line numbers where the error occurs. This information can be useful if the user suspects an error in BlockSolve. We highly recommend the use of DEBUG_ALLand DEBUG_TRACEBACKuntil one is extremely sure of one's the code, and even then it is inexpensive to use DEBUG_ALLwith BlockSolve.


sgreen@cs.utk.edu