Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* RFA: move enum lval_type to value.h
@ 2006-11-02  5:57 Jim Blandy
  2006-11-02  9:54 ` Andreas Schwab
  0 siblings, 1 reply; 3+ messages in thread
From: Jim Blandy @ 2006-11-02  5:57 UTC (permalink / raw)
  To: gdb-patches


The file defs.h has a lot of stuff that doesn't really belong there,
but recent cleanups have made a lot of that unnecessary.

How does this look?

new-src/gdb/ChangeLog:
2006-11-01  Jim Blandy  <jimb@codesourcery.com>

	* defs.h (enum lval_type): Move this from here...
	* value.h (enum lval_type): To here.
	Don't #include "frame.h" any more.
	(struct frame_id): Add forward declaration for structure.
	* frame.h: #include "value.h" here, for enum lval_type.
	* symfile-mem.c, valarith.c, value.c: Explicitly #include
	"frame.h".  These files use definitions from that file, but were
	only #including it implicitly via value.h.

diff -rN -u old-src/gdb/defs.h new-src/gdb/defs.h
--- gdb/defs.h	2006-11-01 17:15:51.000000000 -0800
+++ gdb/defs.h	2006-11-01 17:15:51.000000000 -0800
@@ -654,23 +654,6 @@
 							    void *),
 						   void *));
 
-/* Possible lvalue types.  Like enum language, this should be in
-   value.h, but needs to be here for the same reason. */
-
-enum lval_type
-  {
-    /* Not an lval. */
-    not_lval,
-    /* In memory.  */
-    lval_memory,
-    /* In a register.  Registers are relative to a frame.  */
-    lval_register,
-    /* In a gdb internal variable.  */
-    lval_internalvar,
-    /* Part of a gdb internal variable (structure field).  */
-    lval_internalvar_component
-  };
-
 /* Control types for commands */
 
 enum misc_command_type
diff -rN -u old-src/gdb/frame.h new-src/gdb/frame.h
--- gdb/frame.h	2006-11-01 17:15:51.000000000 -0800
+++ gdb/frame.h	2006-11-01 17:15:51.000000000 -0800
@@ -23,6 +23,8 @@
 #if !defined (FRAME_H)
 #define FRAME_H 1
 
+#include "value.h"              /* for enum lval_type */
+
 /* The following is the intended naming schema for frame functions.
    It isn't 100% consistent, but it is aproaching that.  Frame naming
    schema:
diff -rN -u old-src/gdb/symfile-mem.c new-src/gdb/symfile-mem.c
--- gdb/symfile-mem.c	2006-11-01 17:15:51.000000000 -0800
+++ gdb/symfile-mem.c	2006-11-01 17:15:52.000000000 -0800
@@ -52,6 +52,7 @@
 #include "gdbcmd.h"
 #include "target.h"
 #include "value.h"
+#include "frame.h"
 #include "symfile.h"
 #include "observer.h"
 #include "auxv.h"
diff -rN -u old-src/gdb/valarith.c new-src/gdb/valarith.c
--- gdb/valarith.c	2006-11-01 17:15:51.000000000 -0800
+++ gdb/valarith.c	2006-11-01 17:15:51.000000000 -0800
@@ -23,6 +23,7 @@
 
 #include "defs.h"
 #include "value.h"
+#include "frame.h"
 #include "symtab.h"
 #include "gdbtypes.h"
 #include "expression.h"
diff -rN -u old-src/gdb/value.c new-src/gdb/value.c
--- gdb/value.c	2006-11-01 17:15:51.000000000 -0800
+++ gdb/value.c	2006-11-01 17:15:52.000000000 -0800
@@ -26,6 +26,7 @@
 #include "symtab.h"
 #include "gdbtypes.h"
 #include "value.h"
+#include "frame.h"
 #include "gdbcore.h"
 #include "command.h"
 #include "gdbcmd.h"
diff -rN -u old-src/gdb/value.h new-src/gdb/value.h
--- gdb/value.h	2006-11-01 17:15:51.000000000 -0800
+++ gdb/value.h	2006-11-01 17:15:51.000000000 -0800
@@ -25,8 +25,8 @@
 #define VALUE_H 1
 
 #include "doublest.h"
-#include "frame.h"		/* For struct frame_id.  */
 
+struct frame_id;
 struct block;
 struct expression;
 struct regcache;
@@ -193,6 +193,23 @@
 extern int value_optimized_out (struct value *value);
 extern void set_value_optimized_out (struct value *value, int val);
 
+/* Possible lvalue types.  Like enum language, this should be in
+   value.h, but needs to be here for the same reason. */
+
+enum lval_type
+  {
+    /* Not an lval. */
+    not_lval,
+    /* In memory.  */
+    lval_memory,
+    /* In a register.  Registers are relative to a frame.  */
+    lval_register,
+    /* In a gdb internal variable.  */
+    lval_internalvar,
+    /* Part of a gdb internal variable (structure field).  */
+    lval_internalvar_component
+  };
+
 /* While the following fields are per- VALUE .CONTENT .PIECE (i.e., a
    single value might have multiple LVALs), this hacked interface is
    limited to just the first PIECE.  Expect further change.  */


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: RFA: move enum lval_type to value.h
  2006-11-02  5:57 RFA: move enum lval_type to value.h Jim Blandy
@ 2006-11-02  9:54 ` Andreas Schwab
  2006-11-02 18:54   ` Jim Blandy
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2006-11-02  9:54 UTC (permalink / raw)
  To: Jim Blandy; +Cc: gdb-patches

Jim Blandy <jimb@codesourcery.com> writes:

> The file defs.h has a lot of stuff that doesn't really belong there,
> but recent cleanups have made a lot of that unnecessary.
>
> How does this look?

Please don't forget to update the makefile dependencies.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: RFA: move enum lval_type to value.h
  2006-11-02  9:54 ` Andreas Schwab
@ 2006-11-02 18:54   ` Jim Blandy
  0 siblings, 0 replies; 3+ messages in thread
From: Jim Blandy @ 2006-11-02 18:54 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: gdb-patches


Andreas Schwab <schwab@suse.de> writes:
> Jim Blandy <jimb@codesourcery.com> writes:
>
>> The file defs.h has a lot of stuff that doesn't really belong there,
>> but recent cleanups have made a lot of that unnecessary.
>>
>> How does this look?
>
> Please don't forget to update the makefile dependencies.

Oops --- thank you!

new-lval/gdb/ChangeLog:
2006-11-01  Jim Blandy  <jimb@codesourcery.com>

	Move 'enum lval_type' from defs.h to value.h.
	* defs.h (enum lval_type): Move this from here...
	* value.h (enum lval_type): To here.
	Don't #include "frame.h" any more.
	(struct frame_id): Add forward declaration for structure.
	* frame.h: #include "value.h" here, for enum lval_type.
	* symfile-mem.c, valarith.c, value.c: Explicitly #include
	"frame.h".  These files use definitions from that file, but were
	only #including it implicitly via value.h.
	* Makefile.in (frame_h, value_h): Sub-#includes updated.
	(symfile-mem.o, valarith.o, value.o): Dependencies updated.

diff -rN -u old-lval/gdb/defs.h new-lval/gdb/defs.h
--- gdb/defs.h	2006-11-02 10:51:41.000000000 -0800
+++ gdb/defs.h	2006-11-02 10:51:42.000000000 -0800
@@ -654,23 +654,6 @@
 							    void *),
 						   void *));
 
-/* Possible lvalue types.  Like enum language, this should be in
-   value.h, but needs to be here for the same reason. */
-
-enum lval_type
-  {
-    /* Not an lval. */
-    not_lval,
-    /* In memory.  */
-    lval_memory,
-    /* In a register.  Registers are relative to a frame.  */
-    lval_register,
-    /* In a gdb internal variable.  */
-    lval_internalvar,
-    /* Part of a gdb internal variable (structure field).  */
-    lval_internalvar_component
-  };
-
 /* Control types for commands */
 
 enum misc_command_type
diff -rN -u old-lval/gdb/frame.h new-lval/gdb/frame.h
--- gdb/frame.h	2006-11-02 10:51:41.000000000 -0800
+++ gdb/frame.h	2006-11-02 10:51:42.000000000 -0800
@@ -23,6 +23,8 @@
 #if !defined (FRAME_H)
 #define FRAME_H 1
 
+#include "value.h"              /* for enum lval_type */
+
 /* The following is the intended naming schema for frame functions.
    It isn't 100% consistent, but it is aproaching that.  Frame naming
    schema:
diff -rN -u old-lval/gdb/Makefile.in new-lval/gdb/Makefile.in
--- gdb/Makefile.in	2006-11-02 10:51:41.000000000 -0800
+++ gdb/Makefile.in	2006-11-02 10:51:42.000000000 -0800
@@ -690,7 +690,7 @@
 fbsd_nat_h = fbsd-nat.h
 f_lang_h = f-lang.h
 frame_base_h = frame-base.h
-frame_h = frame.h
+frame_h = frame.h $(value_h)
 frame_unwind_h = frame-unwind.h $(frame_h)
 frv_tdep_h = frv-tdep.h
 gdbarch_h = gdbarch.h
@@ -815,8 +815,7 @@
 ui_out_h = ui-out.h
 user_regs_h = user-regs.h
 valprint_h = valprint.h
-value_h = value.h $(doublest_h) $(frame_h) $(symtab_h) $(gdbtypes_h) \
-	$(expression_h)
+value_h = value.h $(doublest_h) $(symtab_h) $(gdbtypes_h) $(expression_h)
 varobj_h = varobj.h $(symtab_h) $(gdbtypes_h)
 vax_tdep_h = vax-tdep.h
 vec_h = vec.h $(gdb_assert_h) $(gdb_string_h)
@@ -2742,7 +2741,7 @@
 	$(parser_defs_h)
 symfile-mem.o: symfile-mem.c $(defs_h) $(symtab_h) $(gdbcore_h) \
 	$(objfiles_h) $(exceptions_h) $(gdbcmd_h) $(target_h) $(value_h) \
-	$(symfile_h) $(observer_h) $(auxv_h) $(elf_common_h)
+	$(frame_h) $(symfile_h) $(observer_h) $(auxv_h) $(elf_common_h)
 symmisc.o: symmisc.c $(defs_h) $(symtab_h) $(gdbtypes_h) $(bfd_h) \
 	$(symfile_h) $(objfiles_h) $(breakpoint_h) $(command_h) \
 	$(gdb_obstack_h) $(exceptions_h) $(language_h) $(bcache_h) \
@@ -2804,9 +2803,9 @@
 	$(frame_unwind_h) $(dwarf2_frame_h) $(gdbtypes_h) $(inferior_h) \
 	$(gdb_string_h) $(gdb_assert_h) $(gdbcore_h) $(arch_utils_h) \
 	$(regcache_h) $(dis_asm_h) $(osabi_h)
-valarith.o: valarith.c $(defs_h) $(value_h) $(symtab_h) $(gdbtypes_h) \
-	$(expression_h) $(target_h) $(language_h) $(gdb_string_h) \
-	$(doublest_h) $(infcall_h)
+valarith.o: valarith.c $(defs_h) $(value_h) $(frame_h) $(symtab_h) \
+	$(gdbtypes_h) $(expression_h) $(target_h) $(language_h) \
+	$(gdb_string_h) $(doublest_h) $(infcall_h)
 valops.o: valops.c $(defs_h) $(symtab_h) $(gdbtypes_h) $(value_h) $(frame_h) \
 	$(inferior_h) $(gdbcore_h) $(target_h) $(demangle_h) $(language_h) \
 	$(gdbcmd_h) $(regcache_h) $(cp_abi_h) $(block_h) $(infcall_h) \
@@ -2817,8 +2816,8 @@
 	$(annotate_h) $(valprint_h) $(floatformat_h) $(doublest_h) \
 	$(exceptions_h)
 value.o: value.c $(defs_h) $(gdb_string_h) $(symtab_h) $(gdbtypes_h) \
-	$(value_h) $(gdbcore_h) $(command_h) $(gdbcmd_h) $(target_h) \
-	$(language_h) $(scm_lang_h) $(demangle_h) $(doublest_h) \
+	$(value_h) $(frame_h) $(gdbcore_h) $(command_h) $(gdbcmd_h) \
+	$(target_h) $(language_h) $(scm_lang_h) $(demangle_h) $(doublest_h) \
 	$(gdb_assert_h) $(regcache_h) $(block_h)
 varobj.o: varobj.c $(defs_h) $(exceptions_h) $(value_h) $(expression_h) \
 	$(frame_h) $(language_h) $(wrapper_h) $(gdbcmd_h) $(gdb_assert_h) \
diff -rN -u old-lval/gdb/symfile-mem.c new-lval/gdb/symfile-mem.c
--- gdb/symfile-mem.c	2006-11-02 10:51:41.000000000 -0800
+++ gdb/symfile-mem.c	2006-11-02 10:51:42.000000000 -0800
@@ -52,6 +52,7 @@
 #include "gdbcmd.h"
 #include "target.h"
 #include "value.h"
+#include "frame.h"
 #include "symfile.h"
 #include "observer.h"
 #include "auxv.h"
diff -rN -u old-lval/gdb/valarith.c new-lval/gdb/valarith.c
--- gdb/valarith.c	2006-11-02 10:51:41.000000000 -0800
+++ gdb/valarith.c	2006-11-02 10:51:42.000000000 -0800
@@ -23,6 +23,7 @@
 
 #include "defs.h"
 #include "value.h"
+#include "frame.h"
 #include "symtab.h"
 #include "gdbtypes.h"
 #include "expression.h"
diff -rN -u old-lval/gdb/value.c new-lval/gdb/value.c
--- gdb/value.c	2006-11-02 10:51:41.000000000 -0800
+++ gdb/value.c	2006-11-02 10:51:42.000000000 -0800
@@ -26,6 +26,7 @@
 #include "symtab.h"
 #include "gdbtypes.h"
 #include "value.h"
+#include "frame.h"
 #include "gdbcore.h"
 #include "command.h"
 #include "gdbcmd.h"
diff -rN -u old-lval/gdb/value.h new-lval/gdb/value.h
--- gdb/value.h	2006-11-02 10:51:41.000000000 -0800
+++ gdb/value.h	2006-11-02 10:51:42.000000000 -0800
@@ -25,8 +25,8 @@
 #define VALUE_H 1
 
 #include "doublest.h"
-#include "frame.h"		/* For struct frame_id.  */
 
+struct frame_id;
 struct block;
 struct expression;
 struct regcache;
@@ -193,6 +193,23 @@
 extern int value_optimized_out (struct value *value);
 extern void set_value_optimized_out (struct value *value, int val);
 
+/* Possible lvalue types.  Like enum language, this should be in
+   value.h, but needs to be here for the same reason. */
+
+enum lval_type
+  {
+    /* Not an lval. */
+    not_lval,
+    /* In memory.  */
+    lval_memory,
+    /* In a register.  Registers are relative to a frame.  */
+    lval_register,
+    /* In a gdb internal variable.  */
+    lval_internalvar,
+    /* Part of a gdb internal variable (structure field).  */
+    lval_internalvar_component
+  };
+
 /* While the following fields are per- VALUE .CONTENT .PIECE (i.e., a
    single value might have multiple LVALs), this hacked interface is
    limited to just the first PIECE.  Expect further change.  */


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-11-02 18:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-11-02  5:57 RFA: move enum lval_type to value.h Jim Blandy
2006-11-02  9:54 ` Andreas Schwab
2006-11-02 18:54   ` Jim Blandy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox