Branch: Tag:

2000-07-28

2000-07-28 17:16:56 by Fredrik Hübinette (Hubbe) <hubbe@hubbe.net>

JUMBOPATCH: dynamic loading now works on Win* !!!! (somewhat experimental :)

Rev: src/.cvsignore:1.24
Rev: src/Makefile.in:1.198
Rev: src/aclocal.m4:1.17
Rev: src/array.c:1.79
Rev: src/array.h:1.22
Rev: src/backend.c:1.53
Rev: src/backend.h:1.9
Rev: src/bignum.c:1.17
Rev: src/bignum.h:1.14
Rev: src/builtin_functions.c:1.293
Rev: src/builtin_functions.h:1.14
Rev: src/callback.c:1.20
Rev: src/configure.in:1.387
Rev: src/constants.c:1.22
Rev: src/dynamic_buffer.c:1.10
Rev: src/dynamic_load.c:1.41
Rev: src/error.c:1.56
Rev: src/error.h:1.46
Rev: src/fd_control.c:1.32
Rev: src/fdlib.c:1.37
Rev: src/fdlib.h:1.34
Rev: src/fsort.c:1.13
Rev: src/fsort_template.h:1.7
Rev: src/gc.c:1.110
Rev: src/gc.h:1.57
Rev: src/global.h:1.44
Rev: src/interpret.c:1.158
Rev: src/interpret.h:1.52
Rev: src/main.c:1.94
Rev: src/mapping.c:1.94
Rev: src/mapping.h:1.28
Rev: src/module_magic.h:1.1
Rev: src/module_support.c:1.34
Rev: src/module_support.h:1.7
Rev: src/multiset.c:1.26
Rev: src/object.c:1.137
Rev: src/object.h:1.50
Rev: src/opcodes.c:1.78
Rev: src/operators.c:1.93
Rev: src/operators.h:1.8
Rev: src/pike_macros.h:1.17
Rev: src/pike_memory.c:1.71
Rev: src/pike_memory.h:1.14
Rev: src/pike_types.c:1.132
Rev: src/port.c:1.28
Rev: src/precompile.sh.in:1.2
Rev: src/program.c:1.252
Rev: src/program.h:1.97
Rev: src/signal_handler.c:1.173
Rev: src/stralloc.c:1.85
Rev: src/stralloc.h:1.42
Rev: src/stuff.c:1.11
Rev: src/svalue.c:1.85
Rev: src/svalue.h:1.62
Rev: src/testsuite.in:1.316
Rev: src/threads.c:1.133
Rev: src/threads.h:1.99

5:   \*/      /* -  * $Id: svalue.h,v 1.61 2000/07/04 01:43:34 mast Exp $ +  * $Id: svalue.h,v 1.62 2000/07/28 17:16:55 hubbe Exp $    */   #ifndef SVALUE_H   #define SVALUE_H
174:   #define tIfnot(X,Y) tAnd(tNot(X),Y)   #define tAny tOr(tVoid,tMix)    + #define tSimpleCallable tOr3(tArray,tFunction,tObj) + #define tCallable tOr3(tArr(tSimpleCallable),tFunction,tObj) +    #define BIT_ARRAY (1<<PIKE_T_ARRAY)   #define BIT_MAPPING (1<<PIKE_T_MAPPING)   #define BIT_MULTISET (1<<PIKE_T_MULTISET)
326:   #endif      /* Prototypes begin here */ - void really_free_short_svalue(union anything *s, TYPE_T type); - void really_free_svalue(struct svalue *s); - void do_free_svalue(struct svalue *s); - void debug_free_svalues(struct svalue *s, size_t num, INT32 type_hint DMALLOC_LINE_ARGS); - void assign_svalues_no_free(struct svalue *to, + PMOD_EXPORT void really_free_short_svalue(union anything *s, TYPE_T type); + PMOD_EXPORT void really_free_svalue(struct svalue *s); + PMOD_EXPORT void do_free_svalue(struct svalue *s); + PMOD_EXPORT void debug_free_svalues(struct svalue *s, size_t num, INT32 type_hint DMALLOC_LINE_ARGS); + PMOD_EXPORT void assign_svalues_no_free(struct svalue *to,    struct svalue *from,    size_t num,    INT32 type_hint); - void assign_svalues(struct svalue *to, + PMOD_EXPORT void assign_svalues(struct svalue *to,    struct svalue *from,    size_t num,    TYPE_FIELD types); - void assign_to_short_svalue(union anything *u, + PMOD_EXPORT void assign_to_short_svalue(union anything *u,    TYPE_T type,    struct svalue *s); - void assign_to_short_svalue_no_free(union anything *u, + PMOD_EXPORT void assign_to_short_svalue_no_free(union anything *u,    TYPE_T type,    struct svalue *s); - void assign_from_short_svalue_no_free(struct svalue *s, + PMOD_EXPORT void assign_from_short_svalue_no_free(struct svalue *s,    union anything *u,    TYPE_T type); - void assign_short_svalue_no_free(union anything *to, + PMOD_EXPORT void assign_short_svalue_no_free(union anything *to,    union anything *from,    TYPE_T type); - void assign_short_svalue(union anything *to, + PMOD_EXPORT void assign_short_svalue(union anything *to,    union anything *from,    TYPE_T type); - unsigned INT32 hash_svalue(struct svalue *s); - int svalue_is_true(struct svalue *s); - int is_identical(struct svalue *a, struct svalue *b); - int is_eq(struct svalue *a, struct svalue *b); - int low_is_equal(struct svalue *a, + PMOD_EXPORT unsigned INT32 hash_svalue(struct svalue *s); + PMOD_EXPORT int svalue_is_true(struct svalue *s); + PMOD_EXPORT int is_identical(struct svalue *a, struct svalue *b); + PMOD_EXPORT int is_eq(struct svalue *a, struct svalue *b); + PMOD_EXPORT int low_is_equal(struct svalue *a,    struct svalue *b,    struct processing *p); - int low_short_is_equal(const union anything *a, + PMOD_EXPORT int low_short_is_equal(const union anything *a,    const union anything *b,    TYPE_T type,    struct processing *p); - int is_equal(struct svalue *a,struct svalue *b); - int is_lt(struct svalue *a,struct svalue *b); - void describe_svalue(struct svalue *s,int indent,struct processing *p); - void print_svalue (FILE *out, struct svalue *s); - void clear_svalues(struct svalue *s, ptrdiff_t num); - void clear_svalues_undefined(struct svalue *s, ptrdiff_t num); - void copy_svalues_recursively_no_free(struct svalue *to, + PMOD_EXPORT int is_equal(struct svalue *a,struct svalue *b); + PMOD_EXPORT int is_lt(struct svalue *a,struct svalue *b); + PMOD_EXPORT void describe_svalue(struct svalue *s,int indent,struct processing *p); + PMOD_EXPORT void print_svalue (FILE *out, struct svalue *s); + PMOD_EXPORT void clear_svalues(struct svalue *s, ptrdiff_t num); + PMOD_EXPORT void clear_svalues_undefined(struct svalue *s, ptrdiff_t num); + PMOD_EXPORT void copy_svalues_recursively_no_free(struct svalue *to,    struct svalue *from,    size_t num,    struct processing *p);
378:   void debug_check_svalue(struct svalue *s);   void real_gc_xmark_svalues(struct svalue *s, ptrdiff_t num);   void real_gc_check_svalues(struct svalue *s, size_t num); - void real_gc_check_short_svalue(union anything *u, TYPE_T type); +    void gc_check_weak_svalues(struct svalue *s, size_t num); -  + void real_gc_check_short_svalue(union anything *u, TYPE_T type);   void gc_check_weak_short_svalue(union anything *u, TYPE_T type);   TYPE_FIELD real_gc_mark_svalues(struct svalue *s, size_t num); - int real_gc_mark_short_svalue(union anything *u, TYPE_T type); +    TYPE_FIELD gc_mark_weak_svalues(struct svalue *s, size_t num); -  + int real_gc_mark_short_svalue(union anything *u, TYPE_T type);   int gc_mark_weak_short_svalue(union anything *u, TYPE_T type);   TYPE_FIELD real_gc_cycle_check_svalues(struct svalue *s, size_t num); - int real_gc_cycle_check_short_svalue(union anything *u, TYPE_T type); +    TYPE_FIELD gc_cycle_check_weak_svalues(struct svalue *s, size_t num); -  + int real_gc_cycle_check_short_svalue(union anything *u, TYPE_T type);   int gc_cycle_check_weak_short_svalue(union anything *u, TYPE_T type); - INT32 pike_sizeof(struct svalue *s); + PMOD_EXPORT INT32 pike_sizeof(struct svalue *s);   /* Prototypes end here */      #define gc_xmark_svalues(S,N) real_gc_xmark_svalues(dmalloc_check_svalue(S,DMALLOC_LOCATION()),N)