summaryrefslogtreecommitdiff
path: root/gold/script-c.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2008-01-15 23:41:28 +0000
committerIan Lance Taylor <iant@google.com>2008-01-15 23:41:28 +0000
commit091244672e9cb571cb7272d491826f85de871ced (patch)
tree40be47b8e61a974e262595c7aa516f597970f285 /gold/script-c.h
parent58da7b1b61de1ecfbcae3bf0050e8bb65d3ff547 (diff)
downloadbinutils-gdb-091244672e9cb571cb7272d491826f85de871ced.tar.gz
From Andrew Chatham and Craig Silverstein: Add support for version
scripts.
Diffstat (limited to 'gold/script-c.h')
-rw-r--r--gold/script-c.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/gold/script-c.h b/gold/script-c.h
index 95816b76dd8..275f4a22819 100644
--- a/gold/script-c.h
+++ b/gold/script-c.h
@@ -107,6 +107,12 @@ script_parse_option(void* closure, const char*, size_t);
extern void
script_push_lex_into_expression_mode(void* closure);
+/* Called by the bison parser to push the lexer into version
+ mode. */
+
+extern void
+script_push_lex_into_version_mode(void* closure);
+
/* Called by the bison parser to pop the lexer mode. */
extern void
@@ -208,6 +214,38 @@ script_exp_function_segment_start(const char*, size_t, Expression_ptr);
extern Expression_ptr
script_exp_function_assert(Expression_ptr, const char*, size_t);
+struct Version_dependency_list;
+struct Version_expression_list;
+struct Version_tree;
+
+extern void
+script_register_vers_node(void* closure,
+ const char* tag,
+ int taglen,
+ struct Version_tree *,
+ struct Version_dependency_list *);
+
+extern struct Version_dependency_list *
+script_add_vers_depend(void* closure,
+ struct Version_dependency_list *existing_dependencies,
+ const char *depend_to_add, int deplen);
+
+extern struct Version_expression_list *
+script_new_vers_pattern(void* closure,
+ struct Version_expression_list *,
+ const char *, int);
+
+extern struct Version_tree *
+script_new_vers_node(void* closure,
+ struct Version_expression_list *global,
+ struct Version_expression_list *local);
+
+extern void
+version_script_push_lang(void* closure, const char* lang, int langlen);
+
+extern void
+version_script_pop_lang(void* closure);
+
#ifdef __cplusplus
}
#endif