/* fmutex2.c (emx+gcc) -- Copyright (c) 1996 by Eberhard Mattes */

#include <stdlib.h>
#include <sys/builtin.h>
#include <sys/fmutex.h>

/* These functions call abort() and therefore must not be linked in
   when building emx.dll. */

void _fmutex_checked_close (_fmutex *sem)
{
  if (_fmutex_close (sem) != 0)
    abort ();
}


void _fmutex_checked_create (_fmutex *sem, unsigned flags)
{
  if (_fmutex_create (sem, flags) != 0)
    abort ();
}


void _fmutex_checked_open (_fmutex *sem)
{
  if (_fmutex_open (sem) != 0)
    abort ();
}


void _fmutex_checked_release (_fmutex *sem)
{
  if (_fmutex_release (sem) != 0)
    abort ();
}


void _fmutex_checked_request (_fmutex *sem, unsigned flags)
{
  if (_fmutex_request (sem, flags) != 0)
    abort ();
}
