diff options
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/ggc-zone.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fbfad2b250c..c9f29da8e64 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-12-01 Daniel Berlin <dberlin@dberlin.org> + + * ggc-zone.c (ggc_pch_write_object): Calculate object size using + ggc_get_size (which accounts for large objects properly). + 2003-12-01 Jeff Sturm <jsturm@one-point.com> PR optimization/13024 diff --git a/gcc/ggc-zone.c b/gcc/ggc-zone.c index dbca7614a8b..d9c82e6c696 100644 --- a/gcc/ggc-zone.c +++ b/gcc/ggc-zone.c @@ -1663,7 +1663,7 @@ ggc_pch_write_object (struct ggc_pch_data *d ATTRIBUTE_UNUSED, if (!is_string) { struct alloc_chunk *chunk = (struct alloc_chunk *) ((char *)x - CHUNK_OVERHEAD); - size = chunk->size; + size = ggc_get_size (x); if (fwrite (chunk, size + CHUNK_OVERHEAD, 1, f) != 1) fatal_error ("can't write PCH file: %m"); d->written += size + CHUNK_OVERHEAD; |

