/* Copyright 1998 Acorn Computers Ltd
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*----------------------------------------------------------------------*/
/*    Filename    : h.error	                                       	*/
/*    Author	  : R.W.Buckley						*/
/*    Date        : Mon 20th February 1995				*/
/*    Description :      						*/
/*    Modification history:    	    		       			*/
/*    		Nov 97 AR ported to C++					*/
/*----------------------------------------------------------------------*/
#ifndef __error_h
#define __error_h

#ifdef __cplusplus
  extern "C" {
#endif

#include "main.h"

#define ABORT  0		// the exit cause
#define NORMAL 1

#define ERROR_RETURN(a)	      if((a) != NULL) { return a;}

#define FILENAME_MESSAGES   	WORKING_DIR".Messages"  /* Messages file */

extern _kernel_oserror *err; /* Error block */

int  Error(_kernel_oserror *err);
void BadError(_kernel_oserror *err);

_kernel_oserror *error_construct (char *s_token);

#ifdef __cplusplus
   }
#endif

#endif
