pike.git / src / program.h

version» Context lines:

pike.git/src/program.h:1:   /*\   ||| This file a part of Pike, and is copyright by Fredrik Hubinette   ||| Pike is distributed as GPL (General Public License)   ||| See the files COPYING and DISCLAIMER for more information.   \*/      /* -  * $Id: program.h,v 1.146 2001/10/05 22:58:38 hubbe Exp $ +  * $Id: program.h,v 1.147 2001/11/08 23:34:30 nilsson Exp $    */   #ifndef PROGRAM_H   #define PROGRAM_H      #include <stdarg.h>   #include "global.h"   #include "pike_types.h"   #include "pike_macros.h"   #include "svalue.h"   #include "time_stuff.h"
pike.git/src/program.h:375:      #define FIND_LFUN(P,N) ( dmalloc_touch(struct program *,(P))->flags & PROGRAM_FIXED?((P)->lfuns[(N)]):low_find_lfun((P), (N)) )      #define free_program(p) do{ struct program *_=(p); debug_malloc_touch(_); if(!sub_ref(_)) really_free_program(_); }while(0)         extern struct object *error_handler;   extern struct object *compat_handler;      extern struct program *first_program; + extern struct program *null_program;   extern struct program *pike_trampoline_program;   extern struct program *gc_internal_program;   extern struct program *placeholder_program;   extern struct object *placeholder_object;      extern int compilation_depth;      /* Flags for identifier finding... */   #define SEE_STATIC 1   #define SEE_PRIVATE 2         #define COMPILER_IN_CATCH 1      #define ADD_STORAGE(X) low_add_storage(sizeof(X), ALIGNOF(X),0)   #define STORAGE_NEEDED(X) ((X)->storage_needed - (X)->inherits[0].storage_offset)      #define FOO(NUMTYPE,TYPE,NAME) void PIKE_CONCAT(add_to_,NAME(TYPE ARG));   #include "program_areas.h"    -  +  + struct Supporter + { + #ifdef PIKE_DEBUG +  int magic; + #endif +  struct Supporter *previous; +  struct Supporter *depends_on; +  struct Supporter *dependants; +  struct Supporter *next_dependant; +  void (*fun)(void *); +  void *data; +  struct program *prog; + }; +  +  +    /* Prototypes begin here */   void ins_int(INT32 i, void (*func)(char tmp));   void ins_short(INT16 i, void (*func)(char tmp));   void use_module(struct svalue *s);   void unuse_modules(INT32 howmany);   struct node_s *find_module_identifier(struct pike_string *ident,    int see_inherit);   struct program *parent_compilation(int level);   struct program *id_to_program(INT32 id);   void optimize_program(struct program *p);
pike.git/src/program.h:538:   void start_line_numbering(void);   void store_linenumber(INT32 current_line, struct pike_string *current_file);   PMOD_EXPORT struct pike_string *get_program_line(struct program *prog,    INT32 *linep);   char *debug_get_program_line(struct program *prog,    INT32 *linep);   PMOD_EXPORT struct pike_string *get_line(PIKE_OPCODE_T *pc,    struct program *prog, INT32 *linep);   void my_yyerror(char *fmt,...) ATTRIBUTE((format(printf,1,2)));   void yy_describe_exception(struct svalue *thrown); + struct supporter_marker; + void verify_supporters(); + void init_supporter(struct Supporter *s, +  void (*fun)(void *), +  void *data); + int unlink_current_supporter(struct Supporter *c); + void call_dependants(struct Supporter *s); + int report_compiler_dependency(struct program *p);   struct compilation;   void run_pass2(struct compilation *c);   struct program *compile(struct pike_string *aprog,    struct object *ahandler,    int amajor, int aminor,    struct program *atarget,    struct object *aplaceholder); - int report_compiler_dependency(struct program *p); +    PMOD_EXPORT int pike_add_function2(char *name, void (*cfun)(INT32),    char *type, unsigned INT8 flags,    unsigned INT16 opt_flags);   PMOD_EXPORT int quick_add_function(char *name,    int name_length,    void (*cfun)(INT32),    char *type,    int type_length,    unsigned INT8 flags,    unsigned INT16 opt_flags);