/* C language support definitions for GDB, the GNU debugger.
- Copyright (C) 1992-2020 Free Software Foundation, Inc.
+ Copyright (C) 1992-2021 Free Software Foundation, Inc.
This file is part of GDB.
/* These are in c-lang.c: */
-extern struct value *evaluate_subexp_c (struct type *expect_type,
- struct expression *exp,
- int *pos,
- enum noside noside);
+extern void c_printchar (int, struct type *, struct ui_file *);
extern void c_printstr (struct ui_file * stream,
struct type *elttype,
extern void c_language_arch_info (struct gdbarch *gdbarch,
struct language_arch_info *lai);
-extern const struct exp_descriptor exp_descriptor_c;
-
extern void c_emit_char (int c, struct type *type,
struct ui_file *stream, int quoter);
-extern const struct op_print c_op_print_tab[];
-
/* These are in c-typeprint.c: */
extern void c_type_print_base (struct type *, struct ui_file *,
extern int c_textual_element_type (struct type *, char);
-/* 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
+/* Create a new instance of the C compiler and return it. This
+ function never returns NULL, but rather throws an exception on
+ failure. This is suitable for use as the
language_defn::get_compile_instance method. */
-extern compile_instance *c_get_compile_context (void);
+extern std::unique_ptr<compile_instance> c_get_compile_context ();
-/* 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
+/* Create a new instance of the C++ compiler and return it. This
+ function never returns NULL, but rather throws an exception on
+ failure. This is suitable for use as the
language_defn::get_compile_instance method. */
-extern compile_instance *cplus_get_compile_context ();
+extern std::unique_ptr<compile_instance> cplus_get_compile_context ();
/* This takes the user-supplied text and returns a new bit of code to
compile.