aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2expr.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/dwarf2expr.c')
-rw-r--r--gdb/dwarf2expr.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c
index efa497e..3b2b252 100644
--- a/gdb/dwarf2expr.c
+++ b/gdb/dwarf2expr.c
@@ -1280,6 +1280,54 @@ abort_expression:
gdb_assert (ctx->recursion_depth >= 0);
}
+/* Stub dwarf_expr_context_funcs.get_frame_base implementation. */
+
+void
+ctx_no_get_frame_base (void *baton, const gdb_byte **start, size_t *length)
+{
+ error (_("%s is invalid in this context"), "DW_OP_fbreg");
+}
+
+/* Stub dwarf_expr_context_funcs.get_frame_cfa implementation. */
+
+CORE_ADDR
+ctx_no_get_frame_cfa (void *baton)
+{
+ error (_("%s is invalid in this context"), "DW_OP_call_frame_cfa");
+}
+
+/* Stub dwarf_expr_context_funcs.get_frame_pc implementation. */
+
+CORE_ADDR
+ctx_no_get_frame_pc (void *baton)
+{
+ error (_("%s is invalid in this context"), "DW_OP_GNU_implicit_pointer");
+}
+
+/* Stub dwarf_expr_context_funcs.get_tls_address implementation. */
+
+CORE_ADDR
+ctx_no_get_tls_address (void *baton, CORE_ADDR offset)
+{
+ error (_("%s is invalid in this context"), "DW_OP_GNU_push_tls_address");
+}
+
+/* Stub dwarf_expr_context_funcs.dwarf_call implementation. */
+
+void
+ctx_no_dwarf_call (struct dwarf_expr_context *ctx, size_t die_offset)
+{
+ error (_("%s is invalid in this context"), "DW_OP_call*");
+}
+
+/* Stub dwarf_expr_context_funcs.get_base_type implementation. */
+
+struct type *
+ctx_no_get_base_type (struct dwarf_expr_context *ctx, size_t die)
+{
+ error (_("Support for typed DWARF is not supported in this context"));
+}
+
void
_initialize_dwarf2expr (void)
{