/* Copyright 1996 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.
 */
/*
        Header for debugging Filer_Action
*/

#ifndef debug
  #ifdef debugtube
    #define debug
  #else
  #ifdef debugfile
    #define debug
  #endif
  #endif
#endif

#ifdef debug

#include "werr.h"

#define assert( e ) ((e) ? (void)0 : werr(1, "assert failed: '%s' in file %s at line %d", #e, __FILE__, __LINE__))

#ifdef debugfile
extern FILE *debugf;
#endif

extern void dprintf( const char *str, ... );
#define DEBUG(x) dprintf x

#define IGNORE(x)             (void)(x)

#else

#define IGNORE(x)             (void)(x)

#define DEBUG(x)
#define dprintf(...)
#define assert( ignore )

#endif