aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-scripts/defined5.d
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2021-02-20 15:45:44 +1030
committerAlan Modra <amodra@gmail.com>2021-02-21 14:28:16 +1030
commit89753bbf8102edc2aa4262a4d43f1a71a10e34f3 (patch)
tree3afa35082bf7898409aa8e8ff507e8431b32c99d /ld/testsuite/ld-scripts/defined5.d
parent93993f67849234cff651542c3d4d9f0f3d2fa651 (diff)
downloadbinutils-89753bbf8102edc2aa4262a4d43f1a71a10e34f3.zip
binutils-89753bbf8102edc2aa4262a4d43f1a71a10e34f3.tar.gz
binutils-89753bbf8102edc2aa4262a4d43f1a71a10e34f3.tar.bz2
Warn when a script redefines a symbol
Note that we don't even warn if scripts adjust a symbol as in ld-elf/var1 and ld-scripts/pr14962. include/ * bfdlink.h (struct bfd_link_info): Add warn_multiple_definition. ld/ * ldexp.c (exp_fold_tree_1): Warn on script defining a symbol defined in an object file. * ldmain.c (multiple_definition): Heed info->warn_multiple_definition. * testsuite/ld-scripts/defined5.d: Expect a warning.
Diffstat (limited to 'ld/testsuite/ld-scripts/defined5.d')
-rw-r--r--ld/testsuite/ld-scripts/defined5.d5
1 files changed, 3 insertions, 2 deletions
diff --git a/ld/testsuite/ld-scripts/defined5.d b/ld/testsuite/ld-scripts/defined5.d
index 2530c0e..7aa680b 100644
--- a/ld/testsuite/ld-scripts/defined5.d
+++ b/ld/testsuite/ld-scripts/defined5.d
@@ -1,10 +1,11 @@
#ld: -Tdefined5.t
+#warning: .*multiple definition of `defined'.*
#nm: -B
-#source: defined5.s
#xfail: [is_xcoff_format]
# xcoff outputs value of "defined" from the object file
-# Check that arithmetic on DEFINED works.
+# Check that a script can override an object file symbol, if multiple
+# definitions are allowed. See pr12356.
#...
0+1000 D defined
#pass