|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T s
Length: 2441 (0x989) Types: TextFile Names: »support.h«
└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89 └─⟦34cc4e2f7⟧ »./UNRELEASED/xgdb3.2.tar.Z« └─⟦80fac5d7c⟧ └─⟦this⟧ »./support.h« └─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89 └─⟦e10a7c8ba⟧ »./UNRELEASED/xgdb.tar.Z« └─⟦ae30648b5⟧ └─⟦this⟧ »./support.h«
\f /* $Header: support.h,v 1.1 89/07/05 15:36:50 hubbard Exp $ */ /* * * Copyright 1988, 1989 * PCS Computer Systeme, GmbH * Munich, West Germany * * All rights reserved. * * This is unsupported software and is subject to change without notice. * PCS makes no representations about the suitability of this software * for any purpose. It is supplied "as is" without express or implied * warranty. * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name of PCS Computer Systeme not be used in * advertising or publicity pertaining to distribution of the software * without specific, written prior permission. * */ /* * Author: Jordan K. Hubbard * For: PCS Computer Systems * When: April 18th, 1989. * * $Log: support.h,v $ * Revision 1.1 89/07/05 15:36:50 hubbard * Initial revision * * */ #ifndef SUPPORT_H_INCLUDE #define SUPPORT_H_INCLUDE /* * Support macros for function call tracing. If the package using this * is compiled with -DTRACE, an execution trace is printed to stdout. * This will remain in effect until the package is recompiled without it. * * If it is compiled with -DSAVERTNAME, then the routine names are merely * saved on a stack for the use of error message routines and the like (the * current routine name is stored in _Curr_rtn). * * If compiled with none of the above, no extra run time code is included. */ extern char *_Curr_rtn; extern char *Curr_rtn(); #ifdef TRACE extern int _rtn_trace; #define Trace_off _rtn_trace = 0; #define Trace_on _rtn_trace = 1; #define Entry(woo) { push_rtn(woo); } #define Leave(woo) { pop_rtn(); printf("returns %x\n", woo); return(woo); } #define Leave_void { pop_rtn(); return; } #else #ifdef SAVERTNAME #define Trace_off #define Trace_on #define Entry(woo) char *_old = _Curr_rtn; _Curr_rtn = woo #define Leave(woo) { _Curr_rtn = _old; return(woo); } #define Leave_void { _Curr_rtn = _old; return; } #else #define Entry(s) #define Leave(s) return(s) #define Leave_void return #define Trace_on #define Trace_off #endif /* SAVERTNAME */ #endif /* TRACE */ #endif /* SUPPORT_H_INCLUDE */