aboutsummaryrefslogtreecommitdiff
path: root/gdb/c-lang.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/c-lang.h')
-rw-r--r--gdb/c-lang.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/gdb/c-lang.h b/gdb/c-lang.h
index 58a81b0..6fdcaa4 100644
--- a/gdb/c-lang.h
+++ b/gdb/c-lang.h
@@ -152,6 +152,14 @@ extern int c_textual_element_type (struct type *, char);
extern compile::compile_instance *c_get_compile_context (void);
+/* Create a new instance of the C++ compiler and return it. The new
+ compiler is owned by the caller and must be freed using the destroy
+ method. This function never returns NULL, but rather throws an
+ exception on failure. This is suitable for use as the
+ la_get_compile_instance language method. */
+
+extern compile::compile_instance *cplus_get_compile_context (void);
+
/* This takes the user-supplied text and returns a new bit of code to
compile.
@@ -164,4 +172,15 @@ extern std::string c_compute_program (compile::compile_instance *inst,
const struct block *expr_block,
CORE_ADDR expr_pc);
+/* This takes the user-supplied text and returns a new bit of code to compile.
+
+ This is used as the la_compute_program language method; see that
+ for a description of the arguments. */
+
+extern std::string cplus_compute_program (compile::compile_instance *inst,
+ const char *input,
+ struct gdbarch *gdbarch,
+ const struct block *expr_block,
+ CORE_ADDR expr_pc);
+
#endif /* !defined (C_LANG_H) */