aboutsummaryrefslogtreecommitdiff
path: root/bfd/som.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/som.c')
-rw-r--r--bfd/som.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/bfd/som.c b/bfd/som.c
index 93a0ad8..d3865f0 100644
--- a/bfd/som.c
+++ b/bfd/som.c
@@ -5455,8 +5455,18 @@ som_bfd_copy_private_section_data (bfd *ibfd,
/* Reparent if necessary. */
if (som_section_data (osection)->copy_data->container)
- som_section_data (osection)->copy_data->container =
- som_section_data (osection)->copy_data->container->output_section;
+ {
+ if (som_section_data (osection)->copy_data->container->output_section)
+ som_section_data (osection)->copy_data->container =
+ som_section_data (osection)->copy_data->container->output_section;
+ else
+ {
+ /* User has specified a subspace without its containing space. */
+ _bfd_error_handler (_("%pB[%pA]: no output section for space %pA"),
+ obfd, osection, som_section_data (osection)->copy_data->container);
+ return FALSE;
+ }
+ }
return TRUE;
}