diff --git a/src/array.c b/src/array.c
index 7e2afa65e93ed167fa4b894e34cd2586119c80d4..481df495f0ee034a72f685250fb4855dae476085 100644
--- a/src/array.c
+++ b/src/array.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: array.c,v 1.206 2008/05/11 02:35:21 mast Exp $
+|| $Id: array.c,v 1.207 2008/05/11 14:55:52 mast Exp $
 */
 
 #include "global.h"
@@ -2595,7 +2595,7 @@ void check_all_arrays(void)
 #endif /* PIKE_DEBUG */
 
 
-void visit_array (struct array *a, int action)
+PMOD_EXPORT void visit_array (struct array *a, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/array.h b/src/array.h
index 745fc7726a8928a0dcfcf0db4fbddb8c8b5457d5..05408556fe64e9b020364f8d9a258bfdf95c425c 100644
--- a/src/array.h
+++ b/src/array.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: array.h,v 1.74 2008/05/11 02:35:21 mast Exp $
+|| $Id: array.h,v 1.75 2008/05/11 14:55:53 mast Exp $
 */
 
 #ifndef ARRAY_H
@@ -192,7 +192,7 @@ void array_replace(struct array *a,
 PMOD_EXPORT void check_array(struct array *a);
 void check_all_arrays(void);
 #endif
-void visit_array (struct array *a, int action);
+PMOD_EXPORT void visit_array (struct array *a, int action);
 void gc_mark_array_as_referenced(struct array *a);
 void real_gc_cycle_check_array(struct array *a, int weak);
 unsigned gc_touch_all_arrays(void);
diff --git a/src/constants.c b/src/constants.c
index 811c8b04411e3db537d2c97683b7a0b4712b5d91..13d0a3098e4160fda626397cc5884d1e51924aea 100644
--- a/src/constants.c
+++ b/src/constants.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: constants.c,v 1.59 2008/05/11 02:35:22 mast Exp $
+|| $Id: constants.c,v 1.60 2008/05/11 14:55:53 mast Exp $
 */
 
 #include "global.h"
@@ -190,7 +190,7 @@ PMOD_EXPORT struct callable *quick_add_efun(const char *name, ptrdiff_t name_len
   return ret;
 }
 
-void visit_callable (struct callable *c, int action)
+PMOD_EXPORT void visit_callable (struct callable *c, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/constants.h b/src/constants.h
index f0c03be31ff55475e2da43917086321f0a7d7ab9..5a42c5a8a20c9893e5ccc020fd24e50fe12f2c34 100644
--- a/src/constants.h
+++ b/src/constants.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: constants.h,v 1.36 2008/05/11 02:35:22 mast Exp $
+|| $Id: constants.h,v 1.37 2008/05/11 14:55:53 mast Exp $
 */
 
 #ifndef ADD_EFUN_H
@@ -75,7 +75,7 @@ PMOD_EXPORT struct callable *quick_add_efun(const char *name, ptrdiff_t name_len
 					    int flags,
 					    optimize_fun optimize,
 					    docode_fun docode);
-void visit_callable (struct callable *c, int action);
+PMOD_EXPORT void visit_callable (struct callable *c, int action);
 void init_builtin_constants(void);
 void exit_builtin_constants(void);
 /* Prototypes end here */
diff --git a/src/mapping.c b/src/mapping.c
index 1b2a9178636668573c5c4448be2b3bddc17bd965..1fcc52f8396311d1272dc0100e3068fd38231826 100644
--- a/src/mapping.c
+++ b/src/mapping.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: mapping.c,v 1.200 2008/05/11 02:35:22 mast Exp $
+|| $Id: mapping.c,v 1.201 2008/05/11 14:55:53 mast Exp $
 */
 
 #include "global.h"
@@ -2347,7 +2347,7 @@ static void visit_mapping_data (struct mapping_data *md, int action,
   }
 }
 
-void visit_mapping (struct mapping *m, int action)
+PMOD_EXPORT void visit_mapping (struct mapping *m, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/mapping.h b/src/mapping.h
index 0f648ff9c82ecbcb3ed4a288225881dcae694f22..ff26ede77ccb3db7cf7f201894fe062614af21f3 100644
--- a/src/mapping.h
+++ b/src/mapping.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: mapping.h,v 1.67 2008/05/11 02:35:22 mast Exp $
+|| $Id: mapping.h,v 1.68 2008/05/11 14:55:53 mast Exp $
 */
 
 #ifndef MAPPING_H
@@ -372,7 +372,7 @@ PMOD_EXPORT void mapping_search_no_free(struct svalue *to,
 void check_mapping(const struct mapping *m);
 void check_all_mappings(void);
 #endif
-void visit_mapping (struct mapping *m, int action);
+PMOD_EXPORT void visit_mapping (struct mapping *m, int action);
 void gc_mark_mapping_as_referenced(struct mapping *m);
 void real_gc_cycle_check_mapping(struct mapping *m, int weak);
 unsigned gc_touch_all_mappings(void);
diff --git a/src/multiset.c b/src/multiset.c
index 1e192cef81ddf331505ab4e88da2cf6a09b991dc..5eaedef7aee515903d43c023e2b407864df271b7 100644
--- a/src/multiset.c
+++ b/src/multiset.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: multiset.c,v 1.110 2008/05/11 02:35:22 mast Exp $
+|| $Id: multiset.c,v 1.111 2008/05/11 14:55:53 mast Exp $
 */
 
 #include "global.h"
@@ -3847,7 +3847,7 @@ static void visit_multiset_data (struct multiset_data *msd, int action,
   }
 }
 
-void visit_multiset (struct multiset *l, int action)
+PMOD_EXPORT void visit_multiset (struct multiset *l, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/multiset.h b/src/multiset.h
index 71ac914e9c2727080884aa5727b4e535548cfd39..def5c367f745be912fd6ff9e074d66e81be7667b 100644
--- a/src/multiset.h
+++ b/src/multiset.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: multiset.h,v 1.43 2008/05/11 02:35:22 mast Exp $
+|| $Id: multiset.h,v 1.44 2008/05/11 14:55:53 mast Exp $
 */
 
 #ifndef MULTISET_H
@@ -429,7 +429,7 @@ struct multiset *copy_multiset_recursively (struct multiset *l,
 					    struct mapping *p);
 PMOD_EXPORT ptrdiff_t multiset_get_nth (struct multiset *l, size_t n);
 
-void visit_multiset (struct multiset *l, int action);
+PMOD_EXPORT void visit_multiset (struct multiset *l, int action);
 unsigned gc_touch_all_multisets (void);
 void gc_check_all_multisets (void);
 void gc_mark_multiset_as_referenced (struct multiset *l);
diff --git a/src/object.c b/src/object.c
index 1b74da3f844d4f0018715e8631791b6781c7f283..70b8a6f31aa072fddf540074889967064e9aa91b 100644
--- a/src/object.c
+++ b/src/object.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: object.c,v 1.290 2008/05/11 02:35:22 mast Exp $
+|| $Id: object.c,v 1.291 2008/05/11 14:55:53 mast Exp $
 */
 
 #include "global.h"
@@ -1822,7 +1822,7 @@ PMOD_EXPORT struct array *object_values(struct object *o)
 }
 
 
-void visit_object (struct object *o, int action)
+PMOD_EXPORT void visit_object (struct object *o, int action)
 {
   struct program *p = o->prog;
 
diff --git a/src/object.h b/src/object.h
index ec8b589e29bf369b63c5f1f1333af4e966252a1d..55b37bad2b0a2ad8f10bd79592a2fdd6e5e479ac 100644
--- a/src/object.h
+++ b/src/object.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: object.h,v 1.95 2008/05/11 02:35:22 mast Exp $
+|| $Id: object.h,v 1.96 2008/05/11 14:55:53 mast Exp $
 */
 
 #ifndef OBJECT_H
@@ -123,7 +123,7 @@ union anything *object_get_item_ptr(struct object *o,
 PMOD_EXPORT int object_equal_p(struct object *a, struct object *b, struct processing *p);
 PMOD_EXPORT struct array *object_indices(struct object *o);
 PMOD_EXPORT struct array *object_values(struct object *o);
-void visit_object (struct object *o, int action);
+PMOD_EXPORT void visit_object (struct object *o, int action);
 PMOD_EXPORT void visit_function (struct svalue *s, int ref_type);
 PMOD_EXPORT void gc_mark_object_as_referenced(struct object *o);
 PMOD_EXPORT void real_gc_cycle_check_object(struct object *o, int weak);
diff --git a/src/pike_types.c b/src/pike_types.c
index 6a6c2eed88dcd8eb52f82abfdd9ba2d2a80b89c8..b1d446ddfe6d232c8c39605daf34a07273f98f05 100644
--- a/src/pike_types.c
+++ b/src/pike_types.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: pike_types.c,v 1.331 2008/05/11 02:35:22 mast Exp $
+|| $Id: pike_types.c,v 1.332 2008/05/11 14:55:53 mast Exp $
 */
 
 #include "global.h"
@@ -7837,7 +7837,7 @@ void cleanup_pike_type_table(void)
 #endif /* DO_PIKE_CLEANUP */
 }
 
-void visit_type (struct pike_type *t, int action)
+PMOD_EXPORT void visit_type (struct pike_type *t, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/pike_types.h b/src/pike_types.h
index 74663359de977d812f2816cb2581344d42fbc7c9..6e19449ed7b5e6246db6ba76a94a9f57725a2c71 100644
--- a/src/pike_types.h
+++ b/src/pike_types.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: pike_types.h,v 1.114 2008/05/11 02:35:22 mast Exp $
+|| $Id: pike_types.h,v 1.115 2008/05/11 14:55:54 mast Exp $
 */
 
 #ifndef PIKE_TYPES_H
@@ -275,7 +275,7 @@ struct pike_type *object_type_to_program_type(struct pike_type *obj_t);
 PMOD_EXPORT char *get_name_of_type(TYPE_T t);
 void cleanup_pike_types(void);
 void cleanup_pike_type_table(void);
-void visit_type (struct pike_type *t, int action);
+PMOD_EXPORT void visit_type (struct pike_type *t, int action);
 void gc_mark_type_as_referenced(struct pike_type *t);
 void gc_check_type (struct pike_type *t);
 void gc_check_all_types (void);
diff --git a/src/program.c b/src/program.c
index 406a25a4877837605cc49890fccc5ec8e5500412..fb4285f8005216ec0612a022704e439c49c3f714 100644
--- a/src/program.c
+++ b/src/program.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: program.c,v 1.691 2008/05/11 02:35:22 mast Exp $
+|| $Id: program.c,v 1.692 2008/05/11 14:55:54 mast Exp $
 */
 
 #include "global.h"
@@ -9416,7 +9416,7 @@ void cleanup_program(void)
 }
 
 
-void visit_program (struct program *p, int action)
+PMOD_EXPORT void visit_program (struct program *p, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/program.h b/src/program.h
index 52c7dda909f62999d272058156d31c988f66989a..5d066d1510a113d1122e685e352f3df6b4934235 100644
--- a/src/program.h
+++ b/src/program.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: program.h,v 1.242 2008/05/11 02:35:23 mast Exp $
+|| $Id: program.h,v 1.243 2008/05/11 14:55:54 mast Exp $
 */
 
 #ifndef PROGRAM_H
@@ -905,7 +905,7 @@ void check_all_programs(void);
 void placeholder_index(INT32 args);
 void init_program(void);
 void cleanup_program(void);
-void visit_program (struct program *p, int action);
+PMOD_EXPORT void visit_program (struct program *p, int action);
 void gc_mark_program_as_referenced(struct program *p);
 void real_gc_cycle_check_program(struct program *p, int weak);
 unsigned gc_touch_all_programs(void);
diff --git a/src/stralloc.c b/src/stralloc.c
index 497a1692c55288a727e25d4b605b12f96500e773..f83c5fd6fc2212049d4d982fb109ce655ee7994a 100644
--- a/src/stralloc.c
+++ b/src/stralloc.c
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: stralloc.c,v 1.218 2008/05/11 02:36:00 mast Exp $
+|| $Id: stralloc.c,v 1.219 2008/05/11 14:55:54 mast Exp $
 */
 
 #include "global.h"
@@ -2134,7 +2134,7 @@ void count_memory_in_strings(size_t *num, size_t *size)
   size[0]=size_;
 }
 
-void visit_string (struct pike_string *s, int action)
+PMOD_EXPORT void visit_string (struct pike_string *s, int action)
 {
   switch (action) {
 #ifdef PIKE_DEBUG
diff --git a/src/stralloc.h b/src/stralloc.h
index 36e638a71ae041a922c363bc7b88599add22e94e..5e1050a47d68704509c225e0327e265ef84c86d1 100644
--- a/src/stralloc.h
+++ b/src/stralloc.h
@@ -2,7 +2,7 @@
 || 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.
-|| $Id: stralloc.h,v 1.103 2008/05/11 02:36:00 mast Exp $
+|| $Id: stralloc.h,v 1.104 2008/05/11 14:55:54 mast Exp $
 */
 
 #ifndef STRALLOC_H
@@ -330,7 +330,7 @@ PMOD_EXPORT struct pike_string *string_replace(struct pike_string *str,
 void init_shared_string_table(void);
 void cleanup_shared_string_table(void);
 void count_memory_in_strings(size_t *num, size_t *size);
-void visit_string (struct pike_string *s, int action);
+PMOD_EXPORT void visit_string (struct pike_string *s, int action);
 void gc_mark_string_as_referenced (struct pike_string *s);
 unsigned gc_touch_all_strings(void);
 void gc_mark_all_strings(void);