Replace ../include/wait.h with gdb_wait.h.
[deliverable/binutils-gdb.git] / gdb / frame.h
index b7ab53031ccc300024e83a45fdee730ec8a5f353..f82ae362d3028182d173784fc886ed74e3f4badf 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions for dealing with stack frames, for GDB, the GNU debugger.
-   Copyright 1986, 1989, 1991, 1992, 1999 Free Software Foundation, Inc.
+   Copyright 1986, 1989, 1991, 1992, 1999, 2000 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -99,6 +99,20 @@ struct frame_info
     struct frame_info *next, *prev;
   };
 
+/* Values for the source flag to be used in print_frame_info_base(). */
+enum print_what
+  { 
+    /* Print only the source line, like in stepi. */
+    SRC_LINE = -1, 
+    /* Print only the location, i.e. level, address (sometimes)
+       function, args, file, line, line num. */
+    LOCATION,
+    /* Print both of the above. */
+    SRC_AND_LOC, 
+    /* Print location only, but always include the address. */
+    LOC_AND_ADDRESS 
+  };
+
 /* Allocate additional space for appendices to a struct frame_info. */
 
 #ifndef SIZEOF_FRAME_SAVED_REGS
@@ -129,22 +143,24 @@ extern void frame_saved_regs_zalloc PARAMS ((struct frame_info *));
    the definition here by providing one in the tm file.
 
    XXXX - both default and alternate frame_chain_valid functions are
-   deprecated.  New code should use generic dummy frames. */
+   deprecated.  New code should use dummy frames and one of the
+   generic functions. */
 
-extern int default_frame_chain_valid PARAMS ((CORE_ADDR, struct frame_info *));
-extern int alternate_frame_chain_valid PARAMS ((CORE_ADDR, struct frame_info *));
+extern int file_frame_chain_valid (CORE_ADDR, struct frame_info *);
+extern int func_frame_chain_valid (CORE_ADDR, struct frame_info *);
 extern int nonnull_frame_chain_valid PARAMS ((CORE_ADDR, struct frame_info *));
-extern int generic_frame_chain_valid PARAMS ((CORE_ADDR, struct frame_info *));
+extern int generic_file_frame_chain_valid (CORE_ADDR, struct frame_info *);
+extern int generic_func_frame_chain_valid (CORE_ADDR, struct frame_info *);
 extern void generic_save_dummy_frame_tos PARAMS ((CORE_ADDR sp));
 
 #if !defined (FRAME_CHAIN_VALID)
 #if !defined (FRAME_CHAIN_VALID_ALTERNATE)
-#define FRAME_CHAIN_VALID(chain, thisframe) default_frame_chain_valid (chain, thisframe)
+#define FRAME_CHAIN_VALID(chain, thisframe) file_frame_chain_valid (chain, thisframe)
 #else
 /* Use the alternate method of avoiding running up off the end of the frame
    chain or following frames back into the startup code.  See the comments
    in objfiles.h. */
-#define FRAME_CHAIN_VALID(chain, thisframe) alternate_frame_chain_valid (chain,thisframe)
+#define FRAME_CHAIN_VALID(chain, thisframe) func_frame_chain_valid (chain,thisframe)
 #endif /* FRAME_CHAIN_VALID_ALTERNATE */
 #endif /* FRAME_CHAIN_VALID */
 
@@ -200,7 +216,7 @@ extern struct block *block_for_pc_sect PARAMS ((CORE_ADDR, asection *));
 extern int frameless_look_for_prologue PARAMS ((struct frame_info *));
 
 extern void print_frame_args PARAMS ((struct symbol *, struct frame_info *,
-                                     int, GDB_FILE *));
+                                     int, struct ui_file *));
 
 extern struct frame_info *find_relative_frame PARAMS ((struct frame_info *, int *));
 
This page took 0.023925 seconds and 4 git commands to generate.