00001 SUBROUTINE XERROR(MESSG,NMESSG,NERR,LEVEL) 00002 C 00003 C ABSTRACT 00004 C XERROR PROCESSES A DIAGNOSTIC MESSAGE, IN A MANNER 00005 C DETERMINED BY THE VALUE OF LEVEL AND THE CURRENT VALUE 00006 C OF THE LIBRARY ERROR CONTROL FLAG, KONTRL. 00007 C (SEE SUBROUTINE XSETF FOR DETAILS.) 00008 C 00009 C DESCRIPTION OF PARAMETERS 00010 C --INPUT-- 00011 C MESSG - THE HOLLERITH MESSAGE TO BE PROCESSED, CONTAINING 00012 C NO MORE THAN 72 CHARACTERS. 00013 C NMESSG- THE ACTUAL NUMBER OF CHARACTERS IN MESSG. 00014 C NERR - THE ERROR NUMBER ASSOCIATED WITH THIS MESSAGE. 00015 C NERR MUST NOT BE ZERO. 00016 C LEVEL - ERROR CATEGORY. 00017 C =2 MEANS THIS IS AN UNCONDITIONALLY FATAL ERROR. 00018 C =1 MEANS THIS IS A RECOVERABLE ERROR. (I.E., IT IS 00019 C NON-FATAL IF XSETF HAS BEEN APPROPRIATELY CALLED.) 00020 C =0 MEANS THIS IS A WARNING MESSAGE ONLY. 00021 C =-1 MEANS THIS IS A WARNING MESSAGE WHICH IS TO BE 00022 C PRINTED AT MOST ONCE, REGARDLESS OF HOW MANY 00023 C TIMES THIS CALL IS EXECUTED. 00024 C 00025 C EXAMPLES 00026 C CALL XERROR(23HSMOOTH -- NUM WAS ZERO.,23,1,2) 00027 C CALL XERROR(43HINTEG -- LESS THAN FULL ACCURACY ACHIEVED., 00028 C 43,2,1) 00029 C CALL XERROR(65HROOTER -- ACTUAL ZERO OF F FOUND BEFORE INTERVAL 00030 C 1 FULLY COLLAPSED.,65,3,0) 00031 C CALL XERROR(39HEXP -- UNDERFLOWS BEING SET TO ZERO.,39,1,-1) 00032 C 00033 C WRITTEN BY RON JONES, WITH SLATEC COMMON MATH LIBRARY SUBCOMMITTEE 00034 C LATEST REVISION --- 7 FEB 1979 00035 C 00036 DIMENSION MESSG(NMESSG) 00037 CALL XERRWD(MESSG,NMESSG,NERR,LEVEL,0,0,0,0,0.,0.) 00038 RETURN 00039 END