From b66c7cfd6d3fd350c4e07c62586d7ce0aa77261a Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan@rename-it.nl>
Date: Tue, 3 Jun 2008 12:10:56 +0200
Subject: [PATCH] Resolved all outstanding warnings.

---
 src/lib-sieve/sieve-ast.c         | 10 ++++-----
 src/lib-sieve/sieve-ast.h         | 10 ++++-----
 src/lib-sieve/sieve-binary.c      | 36 +++++++++++++++++--------------
 src/lib-sieve/sieve-binary.h      | 24 ++++++++++-----------
 src/lib-sieve/sieve-code.c        | 10 ++++-----
 src/lib-sieve/sieve-code.h        | 10 ++++-----
 src/lib-sieve/sieve-commands.c    | 10 ++++-----
 src/lib-sieve/sieve-commands.h    |  8 +++----
 src/lib-sieve/sieve-comparators.c |  4 ++--
 src/lib-sieve/sieve-comparators.h |  4 ++--
 src/lib-sieve/sieve-generator.c   | 18 ++++++++--------
 src/lib-sieve/sieve-generator.h   | 36 +++++++++++++++----------------
 src/lib-sieve/sieve-interpreter.c | 28 ++++++++++++------------
 src/lib-sieve/sieve-interpreter.h | 28 ++++++++++++------------
 src/lib-sieve/sieve-lexer.c       | 14 ++++++------
 src/lib-sieve/sieve-lexer.h       | 12 +++++------
 src/lib-sieve/sieve-result.c      |  2 +-
 src/lib-sieve/sieve-result.h      |  2 +-
 src/lib-sieve/sieve-script.c      | 12 +++++------
 src/lib-sieve/sieve-script.h      | 10 ++++-----
 src/lib-sieve/sieve-validator.c   | 12 +++++------
 src/lib-sieve/sieve-validator.h   |  8 +++----
 src/lib-sieve/sieve.c             |  6 ++++++
 src/lib-sieve/sieve.h             |  6 ++++++
 src/sieve-bin/sievec.c            |  2 +-
 src/testsuite/cmd-test.c          |  1 -
 src/testsuite/testsuite-common.c  |  2 +-
 27 files changed, 170 insertions(+), 155 deletions(-)

diff --git a/src/lib-sieve/sieve-ast.c b/src/lib-sieve/sieve-ast.c
index 21fbc7906..a8d8da4d0 100644
--- a/src/lib-sieve/sieve-ast.c
+++ b/src/lib-sieve/sieve-ast.c
@@ -100,17 +100,17 @@ void sieve_ast_unref(struct sieve_ast **ast)
 	*ast = NULL;
 }
 
-inline struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast)
+struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast)
 {
 	return ast->root;
 }
 
-inline pool_t sieve_ast_pool(struct sieve_ast *ast)
+pool_t sieve_ast_pool(struct sieve_ast *ast)
 {
 	return ast->pool;
 }
 
-inline struct sieve_script *sieve_ast_script(struct sieve_ast *ast)
+struct sieve_script *sieve_ast_script(struct sieve_ast *ast)
 {
 	return ast->script;
 }
@@ -129,13 +129,13 @@ const char *sieve_ast_type_name(enum sieve_ast_type ast_type) {
 
 /* Extension support */
 
-inline void sieve_ast_extension_set_context
+void sieve_ast_extension_set_context
 	(struct sieve_ast *ast, int ext_id, void *context)
 {
 	array_idx_set(&ast->ext_contexts, (unsigned int) ext_id, &context);	
 }
 
-inline const void *sieve_ast_extension_get_context
+const void *sieve_ast_extension_get_context
 	(struct sieve_ast *ast, int ext_id) 
 {
 	void * const *ctx;
diff --git a/src/lib-sieve/sieve-ast.h b/src/lib-sieve/sieve-ast.h
index cb962e802..f2caeb6eb 100644
--- a/src/lib-sieve/sieve-ast.h
+++ b/src/lib-sieve/sieve-ast.h
@@ -161,16 +161,16 @@ void sieve_ast_unref(struct sieve_ast **ast);
 void sieve_ast_link_object
 	(struct sieve_ast_node *node, const struct sieve_ast_node_object *obj);
 
-inline struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast);
-inline pool_t sieve_ast_pool(struct sieve_ast *ast);
-inline struct sieve_script *sieve_ast_script(struct sieve_ast *ast);
+struct sieve_ast_node *sieve_ast_root(struct sieve_ast *ast);
+pool_t sieve_ast_pool(struct sieve_ast *ast);
+struct sieve_script *sieve_ast_script(struct sieve_ast *ast);
 
 const char *sieve_ast_type_name(enum sieve_ast_type ast_type);
 
 /* extension support */
-inline void sieve_ast_extension_set_context
+void sieve_ast_extension_set_context
 	(struct sieve_ast *ast, int ext_id, void *context);
-inline const void *sieve_ast_extension_get_context
+const void *sieve_ast_extension_get_context
 	(struct sieve_ast *ast, int ext_id);
 
 /* error reporting */
diff --git a/src/lib-sieve/sieve-binary.c b/src/lib-sieve/sieve-binary.c
index cc0dd2632..551135e3f 100644
--- a/src/lib-sieve/sieve-binary.c
+++ b/src/lib-sieve/sieve-binary.c
@@ -238,27 +238,27 @@ void sieve_binary_unref(struct sieve_binary **sbin)
 	*sbin = NULL;
 }
 
-inline sieve_size_t sieve_binary_get_code_size(struct sieve_binary *sbin)
+sieve_size_t sieve_binary_get_code_size(struct sieve_binary *sbin)
 {
 	return buffer_get_used_size(sbin->data);
 }
 
-inline pool_t sieve_binary_pool(struct sieve_binary *sbin)
+pool_t sieve_binary_pool(struct sieve_binary *sbin)
 {
 	return sbin->pool;
 }
 
-inline struct sieve_script *sieve_binary_script(struct sieve_binary *sbin)
+struct sieve_script *sieve_binary_script(struct sieve_binary *sbin)
 {
 	return sbin->script;
 }
 
-inline const char *sieve_binary_path(struct sieve_binary *sbin)
+const char *sieve_binary_path(struct sieve_binary *sbin)
 {
 	return sbin->path;
 }
 
-inline bool sieve_binary_script_older
+bool sieve_binary_script_older
 (struct sieve_binary *sbin, struct sieve_script *script)
 {
 	i_assert(sbin->file != NULL);
@@ -298,7 +298,7 @@ static inline unsigned int sieve_binary_block_count
 	return array_count(&sbin->blocks);
 }
 
-inline void sieve_binary_block_clear
+void sieve_binary_block_clear
 	(struct sieve_binary *sbin, unsigned int id)
 {
 	struct sieve_binary_block *block = sieve_binary_block_get(sbin, id);
@@ -389,7 +389,7 @@ struct sieve_binary_block_header {
  * Saving the binary to a file. 
  */
 
-inline static bool _save_skip(struct ostream *stream, size_t size)
+static inline bool _save_skip(struct ostream *stream, size_t size)
 {	
 	if ( (o_stream_seek(stream, stream->offset + size)) <= 0 ) 
 		return FALSE;
@@ -397,7 +397,7 @@ inline static bool _save_skip(struct ostream *stream, size_t size)
 	return TRUE;
 }
 
-inline static bool _save_skip_aligned
+static inline bool _save_skip_aligned
 	(struct ostream *stream, size_t size, uoff_t *offset)
 {
 	uoff_t aligned_offset = SIEVE_BINARY_ALIGN(stream->offset);
@@ -657,6 +657,8 @@ static void sieve_binary_file_close(struct sieve_binary_file **file)
 	*file = NULL;
 }
 
+#if 0 /* file_memory is currently unused */
+
 /* File loaded/mapped to memory */
 
 struct _file_memory {
@@ -768,6 +770,8 @@ static struct sieve_binary_file *_file_memory_open(const char *path)
 	return &file->binfile;
 }
 
+#endif /* file_lazy is currently unused */
+
 /* File open in lazy mode (only read what is needed into memory) */
 
 static bool _file_lazy_read
@@ -1189,8 +1193,8 @@ void sieve_binary_activate(struct sieve_binary *sbin)
  * Extension handling 
  */
 
-static inline struct sieve_binary_extension_reg *sieve_binary_extension_get_reg
-(struct sieve_binary *sbin, int ext_id)
+static inline struct sieve_binary_extension_reg *sieve_binary_extension_get_reg 
+(struct sieve_binary *sbin, int ext_id) 
 {
 	if ( ext_id >= 0 && ext_id < (int) array_count(&sbin->extension_index) ) {
 		struct sieve_binary_extension_reg * const *ereg = 
@@ -1220,7 +1224,7 @@ static inline struct sieve_binary_extension_reg *
 	return ereg;
 }
 
-inline void sieve_binary_extension_set_context
+void sieve_binary_extension_set_context
 	(struct sieve_binary *sbin, int ext_id, void *context)
 {
 	struct sieve_binary_extension_reg *ereg = 
@@ -1235,7 +1239,7 @@ inline void sieve_binary_extension_set_context
 	ereg->context = context;
 }
 
-inline const void *sieve_binary_extension_get_context
+const void *sieve_binary_extension_get_context
 	(struct sieve_binary *sbin, int ext_id) 
 {
 	struct sieve_binary_extension_reg *ereg = 
@@ -1248,7 +1252,7 @@ inline const void *sieve_binary_extension_get_context
 	return NULL;
 }
 
-inline void sieve_binary_extension_set
+void sieve_binary_extension_set
 (struct sieve_binary *sbin, int ext_id, 
 	const struct sieve_binary_extension *bext)
 {
@@ -1366,7 +1370,7 @@ int sieve_binary_extensions_count(struct sieve_binary *sbin)
 
 /* Low-level emission functions */
 
-inline sieve_size_t sieve_binary_emit_data
+sieve_size_t sieve_binary_emit_data
 (struct sieve_binary *binary, const void *data, sieve_size_t size) 
 {
 	sieve_size_t address = buffer_get_used_size(binary->data);
@@ -1376,13 +1380,13 @@ inline sieve_size_t sieve_binary_emit_data
 	return address;
 }
 
-inline sieve_size_t sieve_binary_emit_byte
+sieve_size_t sieve_binary_emit_byte
 (struct sieve_binary *binary, unsigned char byte) 
 {
 	return sieve_binary_emit_data(binary, &byte, 1);
 }
 
-inline void sieve_binary_update_data
+void sieve_binary_update_data
 (struct sieve_binary *binary, sieve_size_t address, const void *data, 
 	sieve_size_t size) 
 {
diff --git a/src/lib-sieve/sieve-binary.h b/src/lib-sieve/sieve-binary.h
index 7598df626..368dc70db 100644
--- a/src/lib-sieve/sieve-binary.h
+++ b/src/lib-sieve/sieve-binary.h
@@ -12,10 +12,10 @@ struct sieve_binary *sieve_binary_create_new(struct sieve_script *script);
 void sieve_binary_ref(struct sieve_binary *sbin);
 void sieve_binary_unref(struct sieve_binary **sbin);
 
-inline pool_t sieve_binary_pool(struct sieve_binary *sbin);
-inline struct sieve_script *sieve_binary_script(struct sieve_binary *sbin);
-inline const char *sieve_binary_path(struct sieve_binary *sbin);
-inline bool sieve_binary_script_older
+pool_t sieve_binary_pool(struct sieve_binary *sbin);
+struct sieve_script *sieve_binary_script(struct sieve_binary *sbin);
+const char *sieve_binary_path(struct sieve_binary *sbin);
+bool sieve_binary_script_older
 	(struct sieve_binary *sbin, struct sieve_script *script);
 
 void sieve_binary_activate(struct sieve_binary *sbin);
@@ -41,7 +41,7 @@ enum sieve_binary_system_block {
 bool sieve_binary_block_set_active
 	(struct sieve_binary *sbin, unsigned int id, unsigned *old_id_r);
 unsigned int sieve_binary_block_create(struct sieve_binary *sbin);
-inline void sieve_binary_block_clear
+void sieve_binary_block_clear
 	(struct sieve_binary *sbin, unsigned int id);
 	
 /* 
@@ -59,12 +59,12 @@ struct sieve_binary_extension {
 	bool (*binary_up_to_date)(struct sieve_binary *sbin);
 };
  
-inline void sieve_binary_extension_set_context
+void sieve_binary_extension_set_context
 	(struct sieve_binary *sbin, int ext_id, void *context);
-inline const void *sieve_binary_extension_get_context
+const void *sieve_binary_extension_get_context
 	(struct sieve_binary *sbin, int ext_id);
 	
-inline void sieve_binary_extension_set
+void sieve_binary_extension_set
 	(struct sieve_binary *sbin, int ext_id, 
 		const struct sieve_binary_extension *bext);
 
@@ -88,14 +88,14 @@ int sieve_binary_extensions_count(struct sieve_binary *sbin);
  
 /* Low-level emission functions */
 
-inline sieve_size_t sieve_binary_emit_data
+sieve_size_t sieve_binary_emit_data
 	(struct sieve_binary *binary, const void *data, sieve_size_t size);
-inline sieve_size_t sieve_binary_emit_byte
+sieve_size_t sieve_binary_emit_byte
 	(struct sieve_binary *binary, unsigned char byte);
-inline void sieve_binary_update_data
+void sieve_binary_update_data
 	(struct sieve_binary *binary, sieve_size_t address, const void *data, 
 		sieve_size_t size);
-inline sieve_size_t sieve_binary_get_code_size(struct sieve_binary *binary);
+sieve_size_t sieve_binary_get_code_size(struct sieve_binary *binary);
 
 /* Offset emission functions */
 
diff --git a/src/lib-sieve/sieve-code.c b/src/lib-sieve/sieve-code.c
index c36fbb11d..ba6922c67 100644
--- a/src/lib-sieve/sieve-code.c
+++ b/src/lib-sieve/sieve-code.c
@@ -74,19 +74,19 @@ void sieve_coded_stringlist_reset(struct sieve_coded_stringlist *strlist)
 	strlist->index = 0;
 }
 
-inline int sieve_coded_stringlist_get_length
+int sieve_coded_stringlist_get_length
 	(struct sieve_coded_stringlist *strlist)
 {
 	return strlist->length;
 }
 
-inline sieve_size_t sieve_coded_stringlist_get_end_address
+sieve_size_t sieve_coded_stringlist_get_end_address
 (struct sieve_coded_stringlist *strlist)
 {
 	return strlist->end_address;
 }
 
-inline sieve_size_t sieve_coded_stringlist_get_current_offset
+sieve_size_t sieve_coded_stringlist_get_current_offset
 	(struct sieve_coded_stringlist *strlist)
 {
 	return strlist->current_offset;
@@ -180,7 +180,7 @@ static struct sieve_extension_obj_registry oprd_default_reg =
  * Operand functions 
  */
 
-inline sieve_size_t sieve_operand_emit_code
+sieve_size_t sieve_operand_emit_code
 	(struct sieve_binary *sbin, const struct sieve_operand *opr, int ext_id)
 {	
 	return sieve_extension_emit_obj
@@ -676,7 +676,7 @@ static struct sieve_extension_obj_registry oprt_default_reg =
 
 /* Operation functions */
 
-inline sieve_size_t sieve_operation_emit_code
+sieve_size_t sieve_operation_emit_code
 	(struct sieve_binary *sbin, const struct sieve_operation *op, int ext_id)
 {	
 	return sieve_extension_emit_obj
diff --git a/src/lib-sieve/sieve-code.h b/src/lib-sieve/sieve-code.h
index 8d9900070..3338cb904 100644
--- a/src/lib-sieve/sieve-code.h
+++ b/src/lib-sieve/sieve-code.h
@@ -20,11 +20,11 @@ bool sieve_coded_stringlist_read_all
 	(struct sieve_coded_stringlist *strlist, pool_t pool,
 		const char * const **list_r);
 
-inline int sieve_coded_stringlist_get_length
+int sieve_coded_stringlist_get_length
 	(struct sieve_coded_stringlist *strlist);
-inline sieve_size_t sieve_coded_stringlist_get_end_address
+sieve_size_t sieve_coded_stringlist_get_end_address
 	(struct sieve_coded_stringlist *strlist);
-inline sieve_size_t sieve_coded_stringlist_get_current_offset
+sieve_size_t sieve_coded_stringlist_get_current_offset
 	(struct sieve_coded_stringlist *strlist);
 
 /* Operand: argument to an operation */
@@ -90,7 +90,7 @@ extern const struct sieve_operand stringlist_operand;
 extern const struct sieve_operand *sieve_operands[];
 extern const unsigned int sieve_operand_count;
 
-inline sieve_size_t sieve_operand_emit_code
+sieve_size_t sieve_operand_emit_code
 	(struct sieve_binary *sbin, const struct sieve_operand *opr, int ext_id);
 const struct sieve_operand *sieve_operand_read
 	(struct sieve_binary *sbin, sieve_size_t *address);
@@ -168,7 +168,7 @@ extern const struct sieve_operation sieve_jmp_operation;
 extern const struct sieve_operation sieve_jmptrue_operation;
 extern const struct sieve_operation sieve_jmpfalse_operation; 
 
-inline sieve_size_t sieve_operation_emit_code
+sieve_size_t sieve_operation_emit_code
 	(struct sieve_binary *sbin, const struct sieve_operation *op, int ext_id);	
 const struct sieve_operation *sieve_operation_read
 	(struct sieve_binary *sbin, sieve_size_t *address);
diff --git a/src/lib-sieve/sieve-commands.c b/src/lib-sieve/sieve-commands.c
index d869afc2d..36cafb58b 100644
--- a/src/lib-sieve/sieve-commands.c
+++ b/src/lib-sieve/sieve-commands.c
@@ -75,7 +75,7 @@ static bool arg_string_list_validate
 	return TRUE;	
 }
 
-static inline bool emit_string_list_operand
+static bool emit_string_list_operand
 (struct sieve_generator *generator, const struct sieve_ast_argument *strlist,
 	struct sieve_command_context *context)
 {	
@@ -190,7 +190,7 @@ const unsigned int sieve_core_commands_count = N_ELEMENTS(sieve_core_commands);
 	
 /* Command context */
 
-inline struct sieve_command_context *sieve_command_prev_context	
+struct sieve_command_context *sieve_command_prev_context	
 	(struct sieve_command_context *context) 
 {
 	struct sieve_ast_node *node = sieve_ast_node_prev(context->ast_node);
@@ -202,7 +202,7 @@ inline struct sieve_command_context *sieve_command_prev_context
 	return NULL;
 }
 
-inline struct sieve_command_context *sieve_command_parent_context	
+struct sieve_command_context *sieve_command_parent_context	
 	(struct sieve_command_context *context) 
 {
 	struct sieve_ast_node *node = sieve_ast_node_parent(context->ast_node);
@@ -247,7 +247,7 @@ const char *sieve_command_type_name(const struct sieve_command *command) {
  * because exiting jumps are not generated when they would otherwise be 
  * necessary.
  */
-inline void sieve_command_exit_block_unconditionally
+void sieve_command_exit_block_unconditionally
 	(struct sieve_command_context *cmd)
 {
 	struct sieve_command_context *parent = sieve_command_parent_context(cmd);
@@ -257,7 +257,7 @@ inline void sieve_command_exit_block_unconditionally
 		parent->block_exit_command = cmd;
 }
 
-inline bool sieve_command_block_exits_unconditionally
+bool sieve_command_block_exits_unconditionally
 	(struct sieve_command_context *cmd)
 {
 	return ( cmd->block_exit_command != NULL );
diff --git a/src/lib-sieve/sieve-commands.h b/src/lib-sieve/sieve-commands.h
index 36ce0b0ac..c84cef9e2 100644
--- a/src/lib-sieve/sieve-commands.h
+++ b/src/lib-sieve/sieve-commands.h
@@ -108,14 +108,14 @@ const char *sieve_command_type_name(const struct sieve_command *command);
 #define sieve_command_is_first(context) \
 	( sieve_ast_node_prev((context)->ast_node) == NULL )	
 
-inline struct sieve_command_context *sieve_command_prev_context	
+struct sieve_command_context *sieve_command_prev_context	
 	(struct sieve_command_context *context); 
-inline struct sieve_command_context *sieve_command_parent_context	
+struct sieve_command_context *sieve_command_parent_context	
 	(struct sieve_command_context *context);
 	
-inline void sieve_command_exit_block_unconditionally
+void sieve_command_exit_block_unconditionally
 	(struct sieve_command_context *cmd);
-inline bool sieve_command_block_exits_unconditionally
+bool sieve_command_block_exits_unconditionally
 	(struct sieve_command_context *cmd);
 
 #endif /* __SIEVE_COMMANDS_H */
diff --git a/src/lib-sieve/sieve-comparators.c b/src/lib-sieve/sieve-comparators.c
index c8b780a6e..e5f86f528 100644
--- a/src/lib-sieve/sieve-comparators.c
+++ b/src/lib-sieve/sieve-comparators.c
@@ -286,7 +286,7 @@ void sieve_comparators_link_tag
 	sieve_validator_register_tag(validator, cmd_reg, &comparator_tag, id_code); 	
 }
 
-inline bool sieve_comparator_tag_is
+bool sieve_comparator_tag_is
 (struct sieve_ast_argument *tag, const struct sieve_comparator *cmp)
 {
 	const struct sieve_comparator_context *cmpctx = 
@@ -297,7 +297,7 @@ inline bool sieve_comparator_tag_is
 	return ( tag->argument == &comparator_tag && cmpctx->comparator == cmp );
 }
 
-inline const struct sieve_comparator *sieve_comparator_tag_get
+const struct sieve_comparator *sieve_comparator_tag_get
 (struct sieve_ast_argument *tag)
 {
 	if ( tag->argument != &comparator_tag ) 
diff --git a/src/lib-sieve/sieve-comparators.h b/src/lib-sieve/sieve-comparators.h
index 2fb8e1f64..59c8e6976 100644
--- a/src/lib-sieve/sieve-comparators.h
+++ b/src/lib-sieve/sieve-comparators.h
@@ -61,9 +61,9 @@ extern const struct sieve_argument comparator_tag;
 void sieve_comparators_link_tag
 	(struct sieve_validator *validator, 
 		struct sieve_command_registration *cmd_reg,	int id_code);
-inline bool sieve_comparator_tag_is
+bool sieve_comparator_tag_is
 	(struct sieve_ast_argument *tag, const struct sieve_comparator *cmp);
-inline const struct sieve_comparator *sieve_comparator_tag_get
+const struct sieve_comparator *sieve_comparator_tag_get
 	(struct sieve_ast_argument *tag);
 
 extern const struct sieve_comparator i_octet_comparator;
diff --git a/src/lib-sieve/sieve-generator.c b/src/lib-sieve/sieve-generator.c
index e6dde59ba..e33a6e92c 100644
--- a/src/lib-sieve/sieve-generator.c
+++ b/src/lib-sieve/sieve-generator.c
@@ -116,7 +116,7 @@ void sieve_generator_free(struct sieve_generator **generator)
 	*generator = NULL;
 }
 
-inline struct sieve_script *sieve_generator_get_script
+struct sieve_script *sieve_generator_get_script
 	(struct sieve_generator *gentr)
 {
 	return gentr->script;
@@ -175,13 +175,13 @@ bool sieve_generator_link_extension
 	return TRUE;
 }
 
-inline void sieve_generator_extension_set_context
+void sieve_generator_extension_set_context
 	(struct sieve_generator *gentr, int ext_id, void *context)
 {
 	array_idx_set(&gentr->ext_contexts, (unsigned int) ext_id, &context);	
 }
 
-inline const void *sieve_generator_extension_get_context
+const void *sieve_generator_extension_get_context
 	(struct sieve_generator *gentr, int ext_id) 
 {
 	void * const *ctx;
@@ -196,19 +196,19 @@ inline const void *sieve_generator_extension_get_context
 
 /* Binary access */
 
-inline struct sieve_binary *sieve_generator_get_binary
+struct sieve_binary *sieve_generator_get_binary
 	(struct sieve_generator *gentr)
 {
 	return gentr->binary;
 }
 
-inline sieve_size_t sieve_generator_emit_operation
+sieve_size_t sieve_generator_emit_operation
 	(struct sieve_generator *gentr, const struct sieve_operation *op)
 {
 	return sieve_operation_emit_code(gentr->binary, op, -1);
 }
 
-inline sieve_size_t sieve_generator_emit_operation_ext
+sieve_size_t sieve_generator_emit_operation_ext
 	(struct sieve_generator *gentr, const struct sieve_operation *op, int ext_id)
 {	
 	return sieve_operation_emit_code(gentr->binary, op, ext_id);
@@ -398,18 +398,18 @@ bool sieve_generator_run
 
 /* Accessors */
 
-inline struct sieve_error_handler *sieve_generator_error_handler
+struct sieve_error_handler *sieve_generator_error_handler
 	(struct sieve_generator *gentr)
 {
 	return gentr->ehandler;
 }
 
-inline pool_t sieve_generator_pool(struct sieve_generator *gentr)
+pool_t sieve_generator_pool(struct sieve_generator *gentr)
 {
 	return gentr->pool;
 }
 
-inline struct sieve_script *sieve_generator_script
+struct sieve_script *sieve_generator_script
 	(struct sieve_generator *gentr)
 {
 	return gentr->script;
diff --git a/src/lib-sieve/sieve-generator.h b/src/lib-sieve/sieve-generator.h
index 367672d6e..b11ab56e3 100644
--- a/src/lib-sieve/sieve-generator.h
+++ b/src/lib-sieve/sieve-generator.h
@@ -9,7 +9,7 @@ struct sieve_generator *sieve_generator_create
 	(struct sieve_ast *ast, struct sieve_error_handler *ehandler);
 void sieve_generator_free(struct sieve_generator **generator);
 
-inline struct sieve_script *sieve_generator_get_script
+struct sieve_script *sieve_generator_get_script
 	(struct sieve_generator *gentr);
 
 /* Error handling */
@@ -28,9 +28,9 @@ void sieve_generator_critical
 
 bool sieve_generator_link_extension
 	(struct sieve_generator *gentr, int ext_id);
-inline void sieve_generator_extension_set_context
+void sieve_generator_extension_set_context
 	(struct sieve_generator *gentr, int ext_id, void *context);
-inline const void *sieve_generator_extension_get_context
+const void *sieve_generator_extension_get_context
 	(struct sieve_generator *gentr, int ext_id);
     		
 /* Jump list */
@@ -52,37 +52,37 @@ void sieve_jumplist_add
 void sieve_jumplist_resolve(struct sieve_jumplist *jlist);
 
 /* Code emission API */
-inline sieve_size_t sieve_generator_emit_data
+sieve_size_t sieve_generator_emit_data
 	(struct sieve_generator *generator, void *data, sieve_size_t size);
-inline sieve_size_t sieve_generator_emit_byte
+sieve_size_t sieve_generator_emit_byte
 	(struct sieve_generator *generator, unsigned char byte); 
-inline void sieve_generator_update_data
+void sieve_generator_update_data
 	(struct sieve_generator *generator, sieve_size_t address, void *data, 
 		sieve_size_t size);
-inline sieve_size_t sieve_generator_get_current_address
+sieve_size_t sieve_generator_get_current_address
 	(struct sieve_generator *generator);
 
-inline struct sieve_binary *sieve_generator_get_binary
+struct sieve_binary *sieve_generator_get_binary
 	(struct sieve_generator *gentr);
-inline sieve_size_t sieve_generator_emit_operation
+sieve_size_t sieve_generator_emit_operation
 	(struct sieve_generator *gentr, const struct sieve_operation *op);
-inline sieve_size_t sieve_generator_emit_operation_ext
+sieve_size_t sieve_generator_emit_operation_ext
 	(struct sieve_generator *gentr, const struct sieve_operation *op, int ext_id);
 
 /* Offset emission */
 
-inline sieve_size_t sieve_generator_emit_offset
+sieve_size_t sieve_generator_emit_offset
 	(struct sieve_generator *generator, int offset);
-inline void sieve_generator_resolve_offset
+void sieve_generator_resolve_offset
 	(struct sieve_generator *generator, sieve_size_t address); 
 
 /* Literal emission */
 
-inline sieve_size_t sieve_generator_emit_byte
+sieve_size_t sieve_generator_emit_byte
 	(struct sieve_generator *generator, unsigned char btval);
-inline sieve_size_t sieve_generator_emit_integer
+sieve_size_t sieve_generator_emit_integer
 	(struct sieve_generator *generator, sieve_size_t integer);
-inline sieve_size_t sieve_generator_emit_string
+sieve_size_t sieve_generator_emit_string
 	(struct sieve_generator *generator, const string_t *str);
 
 /* API */
@@ -105,10 +105,10 @@ bool sieve_generator_run
 
 /* Accessors */
 
-inline struct sieve_error_handler *sieve_generator_error_handler
+struct sieve_error_handler *sieve_generator_error_handler
 	(struct sieve_generator *gentr);
-inline pool_t sieve_generator_pool(struct sieve_generator *gentr);
-inline struct sieve_script *sieve_generator_script
+pool_t sieve_generator_pool(struct sieve_generator *gentr);
+struct sieve_script *sieve_generator_script
 	(struct sieve_generator *gentr);
 
 #endif /* __SIEVE_GENERATOR_H */
diff --git a/src/lib-sieve/sieve-interpreter.c b/src/lib-sieve/sieve-interpreter.c
index f268e95e4..81be1b436 100644
--- a/src/lib-sieve/sieve-interpreter.c
+++ b/src/lib-sieve/sieve-interpreter.c
@@ -64,13 +64,13 @@ static void sieve_message_context_unref(struct sieve_message_context **msgctx)
 	*msgctx = NULL;
 }
 
-inline void sieve_message_context_extension_set
+void sieve_message_context_extension_set
 	(struct sieve_message_context *msgctx, int ext_id, void *context)
 {
 	array_idx_set(&msgctx->ext_contexts, (unsigned int) ext_id, &context);	
 }
 
-inline const void *sieve_message_context_extension_get
+const void *sieve_message_context_extension_get
 	(struct sieve_message_context *msgctx, int ext_id) 
 {
 	void * const *ctx;
@@ -83,7 +83,7 @@ inline const void *sieve_message_context_extension_get
 	return *ctx;
 }
 
-inline pool_t sieve_message_context_pool(struct sieve_message_context *msgctx)
+pool_t sieve_message_context_pool(struct sieve_message_context *msgctx)
 {
 	return msgctx->pool;
 }
@@ -171,18 +171,18 @@ void sieve_interpreter_free(struct sieve_interpreter **interp)
 	*interp = NULL;
 }
 
-inline pool_t sieve_interpreter_pool(struct sieve_interpreter *interp)
+pool_t sieve_interpreter_pool(struct sieve_interpreter *interp)
 {
 	return interp->pool;
 }
 
-inline struct sieve_script *sieve_interpreter_script
+struct sieve_script *sieve_interpreter_script
 	(struct sieve_interpreter *interp)
 {
 	return interp->runenv.script;
 }
 
-inline struct sieve_error_handler *sieve_interpreter_get_error_handler
+struct sieve_error_handler *sieve_interpreter_get_error_handler
 	(struct sieve_interpreter *interp)
 {
 	return interp->ehandler;
@@ -238,13 +238,13 @@ void sieve_runtime_log
 
 /* Extension support */
 
-inline void sieve_interpreter_extension_set_context
+void sieve_interpreter_extension_set_context
 	(struct sieve_interpreter *interpreter, int ext_id, void *context)
 {
 	array_idx_set(&interpreter->ext_contexts, (unsigned int) ext_id, &context);	
 }
 
-inline const void *sieve_interpreter_extension_get_context
+const void *sieve_interpreter_extension_get_context
 	(struct sieve_interpreter *interpreter, int ext_id) 
 {
 	void * const *ctx;
@@ -259,7 +259,7 @@ inline const void *sieve_interpreter_extension_get_context
 
 /* Program counter */
 
-inline void sieve_interpreter_reset(struct sieve_interpreter *interp) 
+void sieve_interpreter_reset(struct sieve_interpreter *interp) 
 {
 	interp->pc = 0;
 	interp->interrupted = FALSE;
@@ -268,17 +268,17 @@ inline void sieve_interpreter_reset(struct sieve_interpreter *interp)
 	interp->runenv.result = NULL;
 }
 
-inline void sieve_interpreter_interrupt(struct sieve_interpreter *interp)
+void sieve_interpreter_interrupt(struct sieve_interpreter *interp)
 {
 	interp->interrupted = TRUE;
 }
 
-inline sieve_size_t sieve_interpreter_program_counter(struct sieve_interpreter *interp)
+sieve_size_t sieve_interpreter_program_counter(struct sieve_interpreter *interp)
 {
 	return interp->pc;
 }
 
-inline bool sieve_interpreter_program_jump
+bool sieve_interpreter_program_jump
 	(struct sieve_interpreter *interp, bool jump)
 {
 	sieve_size_t pc = interp->pc;
@@ -299,13 +299,13 @@ inline bool sieve_interpreter_program_jump
 	return FALSE;
 }
 
-inline void sieve_interpreter_set_test_result
+void sieve_interpreter_set_test_result
 	(struct sieve_interpreter *interp, bool result)
 {
 	interp->test_result = result;
 }
 
-inline bool sieve_interpreter_get_test_result
+bool sieve_interpreter_get_test_result
 	(struct sieve_interpreter *interp)
 {
 	return interp->test_result;
diff --git a/src/lib-sieve/sieve-interpreter.h b/src/lib-sieve/sieve-interpreter.h
index fef5a094f..c33020022 100644
--- a/src/lib-sieve/sieve-interpreter.h
+++ b/src/lib-sieve/sieve-interpreter.h
@@ -15,11 +15,11 @@
 
 struct sieve_message_context;
 
-inline void sieve_message_context_extension_set
+void sieve_message_context_extension_set
 	(struct sieve_message_context *msgctx, int ext_id, void *context);
-inline const void *sieve_message_context_extension_get
+const void *sieve_message_context_extension_get
 	(struct sieve_message_context *msgctx, int ext_id);
-inline pool_t sieve_message_context_pool
+pool_t sieve_message_context_pool
 	(struct sieve_message_context *msgctx);
 
 /* Interpreter */
@@ -43,25 +43,25 @@ struct sieve_interpreter *sieve_interpreter_create
 	(struct sieve_binary *sbin, struct sieve_error_handler *ehandler);
 void sieve_interpreter_free(struct sieve_interpreter **interp);
 
-inline pool_t sieve_interpreter_pool
+pool_t sieve_interpreter_pool
 	(struct sieve_interpreter *interp);
-inline struct sieve_script *sieve_interpreter_script
+struct sieve_script *sieve_interpreter_script
 	(struct sieve_interpreter *interp);
-inline struct sieve_error_handler *sieve_interpreter_get_error_handler
+struct sieve_error_handler *sieve_interpreter_get_error_handler
 	(struct sieve_interpreter *interp);
 
-inline void sieve_interpreter_reset
+void sieve_interpreter_reset
 	(struct sieve_interpreter *interp);
-inline void sieve_interpreter_interrupt
+void sieve_interpreter_interrupt
 	(struct sieve_interpreter *interp);
-inline sieve_size_t sieve_interpreter_program_counter
+sieve_size_t sieve_interpreter_program_counter
 	(struct sieve_interpreter *interp);
-inline bool sieve_interpreter_program_jump
+bool sieve_interpreter_program_jump
 	(struct sieve_interpreter *interp, bool jump);
 	
-inline void sieve_interpreter_set_test_result
+void sieve_interpreter_set_test_result
 	(struct sieve_interpreter *interp, bool result);
-inline bool sieve_interpreter_get_test_result
+bool sieve_interpreter_get_test_result
 	(struct sieve_interpreter *interp);
 	
 /* Error handling */
@@ -78,9 +78,9 @@ void sieve_runtime_log
 
 /* Extension support */
 
-inline void sieve_interpreter_extension_set_context
+void sieve_interpreter_extension_set_context
 	(struct sieve_interpreter *interp, int ext_id, void *context);
-inline const void *sieve_interpreter_extension_get_context
+const void *sieve_interpreter_extension_get_context
 	(struct sieve_interpreter *interp, int ext_id);
 	
 /* Opcodes and operands */
diff --git a/src/lib-sieve/sieve-lexer.c b/src/lib-sieve/sieve-lexer.c
index 0e692bc28..a46dd339a 100644
--- a/src/lib-sieve/sieve-lexer.c
+++ b/src/lib-sieve/sieve-lexer.c
@@ -152,7 +152,7 @@ static void sieve_lexer_shift(struct sieve_lexer *lexer)
   	printf("NULL!\n");*/
 }
 
-static __inline__ int sieve_lexer_curchar(struct sieve_lexer *lexer) {	
+static inline int sieve_lexer_curchar(struct sieve_lexer *lexer) {	
 	if ( lexer->buffer == NULL )
 		return -1;
 	
@@ -222,17 +222,17 @@ void sieve_lexer_print_token(struct sieve_lexer *lexer)
 	}
 }
 
-inline enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer) {
+enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer) {
 	return lexer->token_type;
 }
 
-inline const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer) {
+const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer) {
 	i_assert(	lexer->token_type == STT_STRING );
 		
 	return lexer->token_str_value;
 }
 
-inline const char *sieve_lexer_token_ident(struct sieve_lexer *lexer) {
+const char *sieve_lexer_token_ident(struct sieve_lexer *lexer) {
 	i_assert(
 		lexer->token_type == STT_TAG ||
 		lexer->token_type == STT_IDENTIFIER);
@@ -240,17 +240,17 @@ inline const char *sieve_lexer_token_ident(struct sieve_lexer *lexer) {
 	return str_c(lexer->token_str_value);
 }
 
-inline int sieve_lexer_token_int(struct sieve_lexer *lexer) {
+int sieve_lexer_token_int(struct sieve_lexer *lexer) {
 	i_assert(lexer->token_type == STT_NUMBER);
 		
 	return lexer->token_int_value;
 }
 
-inline bool sieve_lexer_eof(struct sieve_lexer *lexer) {
+bool sieve_lexer_eof(struct sieve_lexer *lexer) {
 	return lexer->token_type == STT_EOF;
 }
 
-inline int sieve_lexer_current_line(struct sieve_lexer *lexer) {
+int sieve_lexer_current_line(struct sieve_lexer *lexer) {
 	return lexer->current_line;
 }
 
diff --git a/src/lib-sieve/sieve-lexer.h b/src/lib-sieve/sieve-lexer.h
index e33b19577..4d8f6c3bd 100644
--- a/src/lib-sieve/sieve-lexer.h
+++ b/src/lib-sieve/sieve-lexer.h
@@ -49,11 +49,11 @@ bool sieve_lexer_skip_token(struct sieve_lexer *lexer);
 const char *sieve_lexer_token_string(struct sieve_lexer *lexer);
 void sieve_lexer_print_token(struct sieve_lexer *lexer);
 
-inline enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer);
-inline const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer);
-inline const char *sieve_lexer_token_ident(struct sieve_lexer *lexer);
-inline int sieve_lexer_token_int(struct sieve_lexer *lexer);
-inline int sieve_lexer_current_line(struct sieve_lexer *lexer);
-inline bool sieve_lexer_eof(struct sieve_lexer *lexer);
+enum sieve_token_type sieve_lexer_current_token(struct sieve_lexer *lexer);
+const string_t *sieve_lexer_token_str(struct sieve_lexer *lexer);
+const char *sieve_lexer_token_ident(struct sieve_lexer *lexer);
+int sieve_lexer_token_int(struct sieve_lexer *lexer);
+int sieve_lexer_current_line(struct sieve_lexer *lexer);
+bool sieve_lexer_eof(struct sieve_lexer *lexer);
 
 #endif /* __SIEVE_LEXER_H */
diff --git a/src/lib-sieve/sieve-result.c b/src/lib-sieve/sieve-result.c
index f674ff318..cd2ab1916 100644
--- a/src/lib-sieve/sieve-result.c
+++ b/src/lib-sieve/sieve-result.c
@@ -88,7 +88,7 @@ void sieve_result_unref(struct sieve_result **result)
     *result = NULL;
 }
 
-inline pool_t sieve_result_pool(struct sieve_result *result)
+pool_t sieve_result_pool(struct sieve_result *result)
 {
 	return result->pool;
 }
diff --git a/src/lib-sieve/sieve-result.h b/src/lib-sieve/sieve-result.h
index 80784e312..8db7ca630 100644
--- a/src/lib-sieve/sieve-result.h
+++ b/src/lib-sieve/sieve-result.h
@@ -11,7 +11,7 @@ struct sieve_result *sieve_result_create
 	(struct sieve_error_handler *ehandler);
 void sieve_result_ref(struct sieve_result *result); 
 void sieve_result_unref(struct sieve_result **result); 
-inline pool_t sieve_result_pool(struct sieve_result *result);
+pool_t sieve_result_pool(struct sieve_result *result);
 
 /* Error handling */
 
diff --git a/src/lib-sieve/sieve-script.c b/src/lib-sieve/sieve-script.c
index 025a0cabb..cf07ad7bc 100644
--- a/src/lib-sieve/sieve-script.c
+++ b/src/lib-sieve/sieve-script.c
@@ -169,30 +169,30 @@ unsigned int sieve_script_hash(struct sieve_script *script)
 	return (unsigned int) script->st.st_ino;
 }
 
-inline bool sieve_script_older
+bool sieve_script_older
 (struct sieve_script *script, time_t time)
 {
 	return ( script->st.st_mtime < time );
 }
 
-/* Inline accessors */
+/* Accessors */
 
-inline const char *sieve_script_name(struct sieve_script *script)
+const char *sieve_script_name(struct sieve_script *script)
 {
 	return script->name;
 }
 
-inline const char *sieve_script_filename(struct sieve_script *script)
+const char *sieve_script_filename(struct sieve_script *script)
 {
 	return script->filename;
 }
 
-inline const char *sieve_script_path(struct sieve_script *script)
+const char *sieve_script_path(struct sieve_script *script)
 {
 	return script->path;
 }
 
-inline const char *sieve_script_binpath(struct sieve_script *script)
+const char *sieve_script_binpath(struct sieve_script *script)
 {
 	return t_strconcat(script->dirpath, "/", script->name, ".svbin", NULL);
 }
diff --git a/src/lib-sieve/sieve-script.h b/src/lib-sieve/sieve-script.h
index e0da16a17..548e9bc61 100644
--- a/src/lib-sieve/sieve-script.h
+++ b/src/lib-sieve/sieve-script.h
@@ -22,7 +22,7 @@ uoff_t sieve_script_get_size(struct sieve_script *script);
 int sieve_script_cmp
 	(struct sieve_script *script1, struct sieve_script *script2);
 unsigned int sieve_script_hash(struct sieve_script *script);
-inline bool sieve_script_older(struct sieve_script *script, time_t time);
+bool sieve_script_older(struct sieve_script *script, time_t time);
 
 static inline bool sieve_script_equals
 	(struct sieve_script *script1, struct sieve_script *script2)
@@ -30,9 +30,9 @@ static inline bool sieve_script_equals
 	return ( sieve_script_cmp(script1, script2) == 0 );
 }
 
-inline const char *sieve_script_name(struct sieve_script *script);
-inline const char *sieve_script_filename(struct sieve_script *script);
-inline const char *sieve_script_path(struct sieve_script *script);
-inline const char *sieve_script_binpath(struct sieve_script *script);
+const char *sieve_script_name(struct sieve_script *script);
+const char *sieve_script_filename(struct sieve_script *script);
+const char *sieve_script_path(struct sieve_script *script);
+const char *sieve_script_binpath(struct sieve_script *script);
 
 #endif /* __SIEVE_SCRIPT_H */
diff --git a/src/lib-sieve/sieve-validator.c b/src/lib-sieve/sieve-validator.c
index 45a7ab7a8..f1263167a 100644
--- a/src/lib-sieve/sieve-validator.c
+++ b/src/lib-sieve/sieve-validator.c
@@ -144,24 +144,24 @@ void sieve_validator_free(struct sieve_validator **validator)
 	*validator = NULL;
 }
 
-inline pool_t sieve_validator_pool(struct sieve_validator *validator)
+pool_t sieve_validator_pool(struct sieve_validator *validator)
 {
 	return validator->pool;
 }
 
-inline struct sieve_error_handler *sieve_validator_error_handler
+struct sieve_error_handler *sieve_validator_error_handler
 	(struct sieve_validator *validator)
 {
 	return validator->ehandler;
 }
 
-inline struct sieve_ast *sieve_validator_ast
+struct sieve_ast *sieve_validator_ast
 	(struct sieve_validator *validator)
 {
 	return validator->ast;
 }
 
-inline struct sieve_script *sieve_validator_script
+struct sieve_script *sieve_validator_script
 	(struct sieve_validator *validator)
 {
 	return validator->script;
@@ -404,13 +404,13 @@ int sieve_validator_extension_load
 	return ext_id;
 }
 
-inline void sieve_validator_extension_set_context
+void sieve_validator_extension_set_context
 	(struct sieve_validator *validator, int ext_id, void *context)
 {
 	array_idx_set(&validator->ext_contexts, (unsigned int) ext_id, &context);	
 }
 
-inline const void *sieve_validator_extension_get_context
+const void *sieve_validator_extension_get_context
 	(struct sieve_validator *validator, int ext_id) 
 {
 	void * const *ctx;
diff --git a/src/lib-sieve/sieve-validator.h b/src/lib-sieve/sieve-validator.h
index ebfcf519c..a0eed1030 100644
--- a/src/lib-sieve/sieve-validator.h
+++ b/src/lib-sieve/sieve-validator.h
@@ -20,13 +20,13 @@ struct sieve_command_registration;
 struct sieve_validator *sieve_validator_create
 	(struct sieve_ast *ast, struct sieve_error_handler *ehandler);
 void sieve_validator_free(struct sieve_validator **validator);
-inline pool_t sieve_validator_pool(struct sieve_validator *validator);
+pool_t sieve_validator_pool(struct sieve_validator *validator);
 
-inline struct sieve_error_handler *sieve_validator_error_handler
+struct sieve_error_handler *sieve_validator_error_handler
 	(struct sieve_validator *validator);
-inline struct sieve_ast *sieve_validator_ast
+struct sieve_ast *sieve_validator_ast
 	(struct sieve_validator *validator);
-inline struct sieve_script *sieve_validator_script
+struct sieve_script *sieve_validator_script
 	(struct sieve_validator *validator);
 
 bool sieve_validator_run(struct sieve_validator *validator);
diff --git a/src/lib-sieve/sieve.c b/src/lib-sieve/sieve.c
index dc0d252c6..15304adf2 100644
--- a/src/lib-sieve/sieve.c
+++ b/src/lib-sieve/sieve.c
@@ -172,6 +172,12 @@ struct sieve_binary *sieve_open
 	return sbin;
 } 
 
+bool sieve_save
+    (struct sieve_binary *sbin, const char *path)
+{
+	return sieve_binary_save(sbin, path);
+}
+
 void sieve_dump(struct sieve_binary *sbin, struct ostream *stream) 
 {
 	struct sieve_binary_dumper *dumpr = sieve_binary_dumper_create(sbin);			
diff --git a/src/lib-sieve/sieve.h b/src/lib-sieve/sieve.h
index df23aac5b..a81c79a7a 100644
--- a/src/lib-sieve/sieve.h
+++ b/src/lib-sieve/sieve.h
@@ -80,6 +80,12 @@ struct sieve_binary *sieve_open
  */
 void sieve_dump(struct sieve_binary *sbin, struct ostream *stream);
 
+/* sieve_save:
+ *  Saves the binary as the file indicated by the path parameter.
+ */
+bool sieve_save
+    (struct sieve_binary *sbin, const char *path);
+
 /* sieve_test:
  *
  *   Executes the bytecode, but only prints the result to stdout.
diff --git a/src/sieve-bin/sievec.c b/src/sieve-bin/sievec.c
index f82a5924f..adae16554 100644
--- a/src/sieve-bin/sievec.c
+++ b/src/sieve-bin/sievec.c
@@ -59,7 +59,7 @@ int main(int argc, char **argv) {
 		if ( dump ) 
 			bin_dump_sieve_binary_to(sbin, "-");
 		else {
-			sieve_binary_save(sbin, outfile);
+			sieve_save(sbin, outfile);
 		}
 		
 		sieve_close(&sbin);
diff --git a/src/testsuite/cmd-test.c b/src/testsuite/cmd-test.c
index 5772abb83..eb41afb54 100644
--- a/src/testsuite/cmd-test.c
+++ b/src/testsuite/cmd-test.c
@@ -82,7 +82,6 @@ static inline struct testsuite_generator_context *
 static bool cmd_test_generate
 	(struct sieve_generator *gentr, struct sieve_command_context *ctx)
 {
-	struct sieve_binary *sbin = sieve_generator_get_binary(gentr);
 	struct testsuite_generator_context *genctx = 
 		_get_generator_context(gentr);
 	
diff --git a/src/testsuite/testsuite-common.c b/src/testsuite/testsuite-common.c
index ae5ced7ec..fab9752b1 100644
--- a/src/testsuite/testsuite-common.c
+++ b/src/testsuite/testsuite-common.c
@@ -144,7 +144,7 @@ bool testsuite_validator_context_initialize(struct sieve_validator *valdtr)
 
 bool testsuite_generator_context_initialize(struct sieve_generator *gentr)
 {
-	pool_t pool = sieve_validator_pool(gentr);
+	pool_t pool = sieve_generator_pool(gentr);
 	struct sieve_binary *sbin = sieve_generator_get_binary(gentr);
 	struct testsuite_generator_context *ctx = 
 		p_new(pool, struct testsuite_generator_context, 1);
-- 
GitLab