e576bb2002-10-11Martin Nilsson /* || This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
4b774c2004-07-01Martin Nilsson || $Id: cpp.h,v 1.10 2004/07/01 20:52:43 nilsson Exp $
e576bb2002-10-11Martin Nilsson */
1b10db2002-10-08Martin Nilsson 
5740881998-01-01Fredrik Hübinette (Hubbe) #ifndef CPP_H #define CPP_H #ifndef STRUCT_HASH_ENTRY_DECLARED struct hash_entry; #define STRUCT_HASH_ENTRY_DECLARED #endif /* Prototypes begin here */ struct define_part; struct define_argument; struct define; struct cpp;
37338b2003-11-14Martin Stjernholm void cpp_error(struct cpp *this, const char *err); void cpp_error_vsprintf (struct cpp *this, const char *fmt, va_list args); void cpp_error_sprintf(struct cpp *this, const char *fmt, ...) ATTRIBUTE((format(printf,2,3))); void cpp_handle_exception(struct cpp *this, const char *cpp_error_fmt, ...) ATTRIBUTE((format(printf,2,3)));
4b774c2004-07-01Martin Nilsson static void cpp_warning(struct cpp *this, const char *warn_fmt, ...) ATTRIBUTE((format(printf,2,3)));
5740881998-01-01Fredrik Hübinette (Hubbe) void PUSH_STRING(char *str, INT32 len, dynamic_buffer *buf); void free_one_define(struct hash_entry *h); void f_cpp(INT32 args);
79ed421998-01-22Henrik Grubbström (Grubba) void init_cpp(void);
5740881998-01-01Fredrik Hübinette (Hubbe) void add_predefine(char *s);
79ed421998-01-22Henrik Grubbström (Grubba) void exit_cpp(void);
5740881998-01-01Fredrik Hübinette (Hubbe) /* Prototypes end here */
b964fd2004-04-16Martin Stjernholm /* Return true if compat version is equal or less than MAJOR.MINOR */ #define CPP_TEST_COMPAT(THIS,MAJOR,MINOR) \ (THIS->compat_major < (MAJOR) || \ (THIS->compat_major == (MAJOR) && \ THIS->compat_minor <= (MINOR)))
5740881998-01-01Fredrik Hübinette (Hubbe) #endif