Browse Source

gdb: move `enum compile_i_scope_types` to compile/compile.h

Move it out of defs.h, adjust the includes here and there.

Change-Id: I11901fdce55d54f5e51723e123cef154cfb1bbc5
Approved-By: John Baldwin <jhb@FreeBSD.org>
master
Simon Marchi 2 years ago
committed by Simon Marchi
parent
commit
5d2c2c84f2
  1. 1
      gdb/cli/cli-script.h
  2. 1
      gdb/compile/compile-object-load.h
  3. 28
      gdb/compile/compile.h
  4. 28
      gdb/defs.h

1
gdb/cli/cli-script.h

@ -17,6 +17,7 @@
#ifndef CLI_CLI_SCRIPT_H
#define CLI_CLI_SCRIPT_H
#include "compile/compile.h"
#include "gdbsupport/function-view.h"
struct ui_file;

1
gdb/compile/compile-object-load.h

@ -18,6 +18,7 @@
#define COMPILE_COMPILE_OBJECT_LOAD_H
#include "compile-internal.h"
#include "compile.h"
#include <list>
struct munmap_list

28
gdb/compile/compile.h

@ -19,6 +19,7 @@
#define COMPILE_COMPILE_H
#include "gcc-c-interface.h"
#include "gdbsupport/gdb-hashtab.h"
struct ui_file;
struct gdbarch;
@ -27,6 +28,33 @@ struct dwarf2_per_objfile;
struct symbol;
struct dynamic_prop;
/* Scope types enumerator. List the types of scopes the compiler will
accept. */
enum compile_i_scope_types
{
COMPILE_I_INVALID_SCOPE,
/* A simple scope. Wrap an expression into a simple scope that
takes no arguments, returns no value, and uses the generic
function name "_gdb_expr". */
COMPILE_I_SIMPLE_SCOPE,
/* Do not wrap the expression,
it has to provide function "_gdb_expr" on its own. */
COMPILE_I_RAW_SCOPE,
/* A printable expression scope. Wrap an expression into a scope
suitable for the "compile print" command. It uses the generic
function name "_gdb_expr". COMPILE_I_PRINT_ADDRESS_SCOPE variant
is the usual one, taking address of the object.
COMPILE_I_PRINT_VALUE_SCOPE is needed for arrays where the array
name already specifies its address. See get_out_value_type. */
COMPILE_I_PRINT_ADDRESS_SCOPE,
COMPILE_I_PRINT_VALUE_SCOPE,
};
/* An object of this type holds state associated with a given
compilation job. */

28
gdb/defs.h

@ -63,34 +63,6 @@
#include "gdbsupport/enum-flags.h"
#include "gdbsupport/array-view.h"
/* Scope types enumerator. List the types of scopes the compiler will
accept. */
enum compile_i_scope_types
{
COMPILE_I_INVALID_SCOPE,
/* A simple scope. Wrap an expression into a simple scope that
takes no arguments, returns no value, and uses the generic
function name "_gdb_expr". */
COMPILE_I_SIMPLE_SCOPE,
/* Do not wrap the expression,
it has to provide function "_gdb_expr" on its own. */
COMPILE_I_RAW_SCOPE,
/* A printable expression scope. Wrap an expression into a scope
suitable for the "compile print" command. It uses the generic
function name "_gdb_expr". COMPILE_I_PRINT_ADDRESS_SCOPE variant
is the usual one, taking address of the object.
COMPILE_I_PRINT_VALUE_SCOPE is needed for arrays where the array
name already specifies its address. See get_out_value_type. */
COMPILE_I_PRINT_ADDRESS_SCOPE,
COMPILE_I_PRINT_VALUE_SCOPE,
};
template<typename T>
using RequireLongest = gdb::Requires<gdb::Or<std::is_same<T, LONGEST>,
std::is_same<T, ULONGEST>>>;

Loading…
Cancel
Save