PL_warning() 
prints a standard Prolog warning message to the standard error (user_error) 
stream. Please note that new code should consider using PL_raise_exception() 
to raise a Prolog exception. See also section 
4.10.
[WARNING: ’, 
followed by the output from format, followed by a‘]’and 
a newline. Then start the tracer. format and the arguments 
are the same as for printf(2). Always returns FALSE.[FATAL ERROR: at <time> ...] and 
terminates the process after cleanup using abort(). If the 
process is a Windows GUI application it uses a message box. This 
function should be used if an unrepairable error is detected. For 
example, Prolog uses it to signal it cannot find the compiled Prolog 
startup or memory allocation fails in a place from where we cannot 
gracefully generate an exception.235Currently 
most memory allocation except for most of the big allocations such as 
for the Prolog stacks.[ERROR: system error:] and provides additional 
technical details such as the thread that trapped the error and 
backtrace of the C and Prolog stacks. This function should be used to 
when an unexpected and unrepairable error is detected. For example, 
Prolog uses this after it finds an inconsistency in the data during 
garbage collection.[ERROR: API error:] and provides additional 
technical details such as the thread that trapped the error and 
backtrace of the C and Prolog stacks. This function is used by the C API 
and may be used by other language bindings to report invalid use of the 
API. This function causes the process to be terminated.