diff options
author | Cary Coutant <ccoutant@google.com> | 2011-09-14 01:10:43 +0000 |
---|---|---|
committer | Cary Coutant <ccoutant@google.com> | 2011-09-14 01:10:43 +0000 |
commit | 1206d0d51475805105f990eaa2a02e2a7699aa80 (patch) | |
tree | e9f43f6450ec75af904f09b48bb82c5db5bfe908 /gold/incremental.cc | |
parent | bc99db514094140c75982320cb31dfe0ebb6f33b (diff) | |
download | gdb-1206d0d51475805105f990eaa2a02e2a7699aa80.zip gdb-1206d0d51475805105f990eaa2a02e2a7699aa80.tar.gz gdb-1206d0d51475805105f990eaa2a02e2a7699aa80.tar.bz2 |
* incremental.cc (Sized_relobj_incr::do_layout): Call
report_comdat_group for kept comdat sections.
* testsuite/Makefile.am (incremental_comdat_test_1): New test.
* testsuite/Makefile.in: Regenerate.
* testsuite/incr_comdat_test_1.cc: New source file.
* testsuite/incr_comdat_test_2_v1.cc: New source file.
* testsuite/incr_comdat_test_2_v2.cc: New source file.
* testsuite/incr_comdat_test_2_v3.cc: New source file.
Diffstat (limited to 'gold/incremental.cc')
-rw-r--r-- | gold/incremental.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gold/incremental.cc b/gold/incremental.cc index e3b48a4..4c4483d 100644 --- a/gold/incremental.cc +++ b/gold/incremental.cc @@ -2008,7 +2008,9 @@ Sized_relobj_incr<size, big_endian>::do_layout( this->error(_("COMDAT group has no signature")); bool keep = layout->find_or_add_kept_section(signature, this, i, true, true, NULL); - if (!keep) + if (keep) + incremental_inputs->report_comdat_group(this, signature); + else this->error(_("COMDAT group %s included twice in incremental link"), signature); } |