pike.git / src / pike_compiler.h

version» Context lines:

pike.git/src/pike_compiler.h:3:   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information.   */      #ifndef PIKE_COMPILER_H   #define PIKE_COMPILER_H      #include "lex.h"   #include "program.h"    + #define SUPPORT_COMPILER_HANDLERS +    extern struct program *reporter_program;   extern struct program *compilation_env_program;   extern struct program *compilation_program;   extern struct object *compilation_environment;   extern struct program *Annotation_program;   extern struct object *Inherited_annotation;      typedef int supporter_callback (void *, int);      struct Supporter
pike.git/src/pike_compiler.h:50:    * NB: Subtyped to the CompilerEnvironment inherit.    */       supporter_callback *fun;    void *data;       struct program *prog;    /* The top level program in the compilation unit. */   };    + /** +  * This is the storage for CompilationEnvironment.PikeCompiler. +  * +  * There is one of these for each translation unit being compiled. +  */   struct compilation   {    struct Supporter supporter;    struct pike_string *prog; /* String to compile. */ -  + #ifdef SUPPORT_COMPILER_HANDLERS    struct object *handler; /* error_handler */    struct object *compat_handler; /* compat_handler */ -  + #endif /* SUPPORT_COMPILER_HANDLERS */    int major, minor; /* Base compat version */    struct program *target; /* Program being compiled. */    struct object *placeholder;    int flags;       struct program *p; /* Compiled program or NULL. */    struct lex lex;       struct svalue default_module; /* predef:: */    struct byte_buffer used_modules; /* Stack of svalues with imported