# PetscEmacsClientErrorHandler

Error handler that uses the emacsclient program to load the file where the error occured. Then calls the "previous" error handler.

### Synopsis

    #include "petsc.h"
    PetscErrorCode PETSC_DLLEXPORT PetscEmacsClientErrorHandler(int line,const char *fun,const char* file,const char *dir,PetscErrorCode n,int p,const char *mess,void *ctx)

Not Collective

### Input Parameters

| line | - the line number of the error (indicated by __LINE__)
| func | - the function where error is detected (indicated by __FUNCT__)
| file | - the file in which the error was detected (indicated by __FILE__)
| dir | - the directory of the file (indicated by __SDIR__)
| mess | - an error text string, usually just printed to the screen
| n | - the generic error number
| p | - specific error number
| ctx | - error handler context

### Options Database Key

-on_error_emacs <machinename> -

### Notes

You must put (server-start) in your .emacs file for the emacsclient software to work

Most users need not directly employ this routine and the other error handlers, but can instead use the simplified interface SETERRQ, which has the calling sequence

        SETERRQ(number,p,mess)

### Notes for experienced users

Use PetscPushErrorHandler() to set the desired error handler. The currently available PETSc error handlers include PetscTraceBackErrorHandler(), PetscAttachDebuggerErrorHandler(), PetscAbortErrorHandler(), and PetscStopErrorHandler()

### See Also

PetscPushErrorHandler(), PetscAttachDebuggerErrorHandler(),
PetscAbortErrorHandler()

Level:developer
Location:src/sys/src/error/err.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages