/* Annotation routines for GDB.
- Copyright (C) 1986-2014 Free Software Foundation, Inc.
+ Copyright (C) 1986-2019 Free Software Foundation, Inc.
This file is part of GDB.
#include "target.h"
#include "gdbtypes.h"
#include "breakpoint.h"
-#include "observer.h"
+#include "observable.h"
#include "inferior.h"
#include "infrun.h"
+#include "top.h"
\f
/* Prototypes for local functions. */
-extern void _initialize_annotate (void);
-
static void print_value_flags (struct type *);
static void breakpoint_changed (struct breakpoint *b);
static int frames_invalid_emitted;
static int breakpoints_invalid_emitted;
-/* True if the target can async, and a synchronous execution command
- is not in progress. If true, input is accepted, so don't suppress
- annotations. */
-
-static int
-async_background_execution_p (void)
-{
- return (target_can_async_p () && !sync_execution);
-}
-
static void
print_value_flags (struct type *t)
{
{
if (annotation_level == 2
&& (!breakpoints_invalid_emitted
- || async_background_execution_p ()))
+ || current_ui->prompt_state != PROMPT_BLOCKED))
{
/* If the inferior owns the terminal (e.g., we're resuming),
make sure to leave with the inferior still owning it. */
- int was_inferior = target_terminal_is_inferior ();
+ int was_inferior = target_terminal::is_inferior ();
- target_terminal_ours_for_output ();
+ target_terminal::ours_for_output ();
printf_unfiltered (("\n\032\032breakpoints-invalid\n"));
if (was_inferior)
- target_terminal_inferior ();
+ target_terminal::inferior ();
breakpoints_invalid_emitted = 1;
}
{
if (annotation_level == 2
&& (!frames_invalid_emitted
- || async_background_execution_p ()))
+ || current_ui->prompt_state != PROMPT_BLOCKED))
{
/* If the inferior owns the terminal (e.g., we're resuming),
make sure to leave with the inferior still owning it. */
- int was_inferior = target_terminal_is_inferior ();
+ int was_inferior = target_terminal::is_inferior ();
- target_terminal_ours_for_output ();
+ target_terminal::ours_for_output ();
printf_unfiltered (("\n\032\032frames-invalid\n"));
if (was_inferior)
- target_terminal_inferior ();
+ target_terminal::inferior ();
frames_invalid_emitted = 1;
}
void
_initialize_annotate (void)
{
- observer_attach_breakpoint_created (breakpoint_changed);
- observer_attach_breakpoint_deleted (breakpoint_changed);
- observer_attach_breakpoint_modified (breakpoint_changed);
+ gdb::observers::breakpoint_created.attach (breakpoint_changed);
+ gdb::observers::breakpoint_deleted.attach (breakpoint_changed);
+ gdb::observers::breakpoint_modified.attach (breakpoint_changed);
}