e021fe | 2008-04-14 | Henrik Grubbström (Grubba) | | |
ec5378 | 2008-05-18 | Henrik Grubbström (Grubba) | | || $Id: pike_compiler.h,v 1.13 2008/05/18 15:36:23 grubba Exp $
|
e021fe | 2008-04-14 | Henrik Grubbström (Grubba) | | */
#ifndef PIKE_COMPILER_H
#define PIKE_COMPILER_H
#include "lex.h"
#include "program.h"
struct compilation
{
struct Supporter supporter;
struct pike_string *prog;
struct object *handler;
struct object *compat_handler;
|
e048d5 | 2008-04-25 | Henrik Grubbström (Grubba) | | int major, minor;
|
e021fe | 2008-04-14 | Henrik Grubbström (Grubba) | | struct program *target;
struct object *placeholder;
|
41c915 | 2008-04-18 | Henrik Grubbström (Grubba) | | int flags;
|
e021fe | 2008-04-14 | Henrik Grubbström (Grubba) | |
struct program *p;
struct lex lex;
int compilation_inherit;
|
5b84a5 | 2008-04-26 | Henrik Grubbström (Grubba) | |
|
885388 | 2008-04-26 | Henrik Grubbström (Grubba) | | struct svalue default_module;
|
5b84a5 | 2008-04-26 | Henrik Grubbström (Grubba) | | dynamic_buffer used_modules;
INT32 num_used_modules;
|
885388 | 2008-04-26 | Henrik Grubbström (Grubba) | | int compilation_depth;
|
e021fe | 2008-04-14 | Henrik Grubbström (Grubba) | | int saved_threads_disabled;
struct mapping *resolve_cache_save;
};
#ifdef PIKE_DEBUG
#define CHECK_COMPILER() do { \
if (!Pike_fp || !compilation_program || \
Pike_fp->context->prog != compilation_program) { \
Pike_fatal("Invalid compilation context!\n"); \
} \
} while(0)
#else
#define CHECK_COMPILER()
#endif
#define THIS_COMPILATION ((struct compilation *)(Pike_fp->current_storage))
#define MAYBE_THIS_COMPILATION ((Pike_fp && compilation_program && (Pike_fp->context->prog == compilation_program))?THIS_COMPILATION:NULL)
|
41c915 | 2008-04-18 | Henrik Grubbström (Grubba) | |
#define COMPILER_BUSY 1 /* The compiler is busy compiling. */
#define COMPILER_DONE 2 /* The is finished compiling. */
|
75a040 | 2008-04-14 | Henrik Grubbström (Grubba) | |
|
e5c8b4 | 2008-04-19 | Henrik Grubbström (Grubba) | | #define REPORT_NOTICE 0 /* FYI. */
|
75a040 | 2008-04-14 | Henrik Grubbström (Grubba) | | #define REPORT_WARNING 1 /* Compiler warning. */
#define REPORT_ERROR 2 /* Compilation error. */
#define REPORT_FATAL 3 /* Unrecoverable error. */
|
41c915 | 2008-04-18 | Henrik Grubbström (Grubba) | |
|
17799f | 2008-04-24 | Henrik Grubbström (Grubba) | | #define CE_REPORT_FUN_NUM 0
#define CE_COMPILE_FUN_NUM 1
#define CE_RESOLV_FUN_NUM 2
#define CE_PIKE_COMPILER_FUN_NUM 3
#define CE_GET_COMPILATION_HANDLER_FUN_NUM 4
#define CE_GET_DEFAULT_MODULE_FUN_NUM 5
|
1f91c0 | 2008-05-02 | Henrik Grubbström (Grubba) | | #define CE_HANDLE_INHERIT_FUN_NUM 6
|
41c915 | 2008-04-18 | Henrik Grubbström (Grubba) | |
|
17799f | 2008-04-24 | Henrik Grubbström (Grubba) | | #define PC_REPORT_FUN_NUM 0
#define PC_COMPILE_FUN_NUM 1
#define PC_RESOLV_FUN_NUM 2
#define PC_CREATE_FUN_NUM 3
#define PC_GET_COMPILATION_HANDLER_FUN_NUM 4
#define PC_GET_DEFAULT_MODULE_FUN_NUM 5
#define PC_CHANGE_COMPILER_COMPATIBILITY_FUN_NUM 6
|
1f91c0 | 2008-05-02 | Henrik Grubbström (Grubba) | | #define PC_HANDLE_INHERIT_FUN_NUM 7
|
08e866 | 2008-05-03 | Henrik Grubbström (Grubba) | | #define PC_POP_TYPE_ATTRIBUTE_FUN_NUM 8
#define PC_PUSH_TYPE_ATTRIBUTE_FUN_NUM 9
|
b0b939 | 2008-05-04 | Henrik Grubbström (Grubba) | | #define PC_APPLY_TYPE_ATTRIBUTE_FUN_NUM 10
|
ec5378 | 2008-05-18 | Henrik Grubbström (Grubba) | | #define PC_APPLY_ATTRIBUTE_CONSTANT_FUN_NUM 11
|
e021fe | 2008-04-14 | Henrik Grubbström (Grubba) | |
#endif /* !PIKE_COMPILER_H */
|