/*
**    Name: support.h
**
**    Date: Fri Aug  1 21:14:01 2003
**
*/


#ifndef _SUPPORT_H
#define _SUPPORT_H

#include "messagetrans.h"
#include "wimp.h"

extern messagetrans_control_block MessageTrans_Control_Block;

#define REPERRTRUE(func) if (check_report_error(func) == TRUE) return TRUE;
#define REPERR(func) if (check_report_error(func) == TRUE) return;
#define ERRFALSETRUE(func) if (func == FALSE) return TRUE;
#define ERRVOID(func) if (func != NULL) return;
#define REPERRCONT(func) check_report_error(func);

#ifdef __cplusplus
extern "C" {
#endif

/* Perform simple messagetrans lookup */
char *messagetrans_simplelookup(char *);

void report_error(int,char *);

osbool report_prompt(char *message);

osbool check_report_error(os_error *);

int string_copy(char *,char *);

int init_signals(void);

void sigabrt(int);
void sigfpe(int);
void sigill(int);
void sigint(int);
void sigsegv(int);
void sigterm(int);
void sigstak(int);

void sigoserror(int);

extern wimp_t task;

#ifdef __cplusplus
}
#endif

#endif
