Consolidate x86 debug register code for BSD native targets.
[deliverable/binutils-gdb.git] / gdb / expression.h
index eea47dc6b2adb891a0434708767b67e61f8ac1de..4952d8457e90c8ab6446e77aabebb89a164531e5 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions for expressions stored in reversed prefix form, for GDB.
 
-   Copyright (C) 1986-2013 Free Software Foundation, Inc.
+   Copyright (C) 1986-2016 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -97,7 +97,10 @@ struct expression
 
 extern struct expression *parse_expression (const char *);
 
-extern struct type *parse_expression_for_completion (char *, char **,
+extern struct expression *parse_expression_with_language (const char *string,
+                                                         enum language lang);
+
+extern struct type *parse_expression_for_completion (const char *, char **,
                                                     enum type_code *);
 
 extern struct expression *parse_exp_1 (const char **, CORE_ADDR pc,
@@ -128,7 +131,10 @@ enum noside
                                   type (inaccuracy: anything that is
                                   listed as being in a register in
                                   the function in which it was
-                                  declared will be lval_register).  */
+                                  declared will be lval_register).
+                                  Ideally this would not even read
+                                  target memory, but currently it
+                                  does in many situations.  */
   };
 
 extern struct value *evaluate_subexp_standard
@@ -146,4 +152,17 @@ extern void dump_raw_expression (struct expression *,
                                 struct ui_file *, char *);
 extern void dump_prefix_expression (struct expression *, struct ui_file *);
 
+/* In an OP_RANGE expression, either bound could be empty, indicating
+   that its value is by default that of the corresponding bound of the
+   array or string.  So we have four sorts of subrange.  This
+   enumeration type is to identify this.  */
+   
+enum range_type
+  {
+    BOTH_BOUND_DEFAULT,                /* "(:)"  */
+    LOW_BOUND_DEFAULT,         /* "(:high)"  */
+    HIGH_BOUND_DEFAULT,                /* "(low:)"  */
+    NONE_BOUND_DEFAULT         /* "(low:high)"  */
+  };
+
 #endif /* !defined (EXPRESSION_H) */
This page took 0.02556 seconds and 4 git commands to generate.