diff options
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/gdbtypes.c | 14 |
2 files changed, 14 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 4ec9972..bb918d2 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2002-05-04 Jim Blandy <jimb@redhat.com> + + * gdbtypes.c (replace_type): Doc fix. + 2002-05-04 Andrew Cagney <ac131313@redhat.com> * valprint.c (strcat_longest): Delete commented out function. diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c index 9132c40..290d4fe 100644 --- a/gdb/gdbtypes.c +++ b/gdb/gdbtypes.c @@ -521,10 +521,16 @@ finish_cv_type (struct type *type) /* Replace the contents of ntype with the type *type. - When building recursive types, it is necessary to update a type's - definition after people already have references to it. The C - language's concept of an `incomplete type' is an acknowledgement of - this. */ + In order to build recursive types, it's inevitable that we'll need + to update types in place --- but this sort of indiscriminate + smashing is ugly, and needs to be replaced with something more + controlled. For example, Daniel Jacobowitz has suggested moving + the fields common to a set of c/v variants into their own object, + which the variants would share. + + This function does not handle the replacement type being + cv-qualified; it could be easily fixed to, but it would be better + to just change the whole approach. */ void replace_type (struct type *ntype, struct type *type) { |