[all-commits] [llvm/llvm-project] 8c3641: [ELF] Change -z unknown from error to warning
Fangrui Song via All-commits
all-commits at lists.llvm.org
Tue Nov 30 11:06:42 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8c3641d03ec0cb0e8730cad349b54d67581b4c73
https://github.com/llvm/llvm-project/commit/8c3641d03ec0cb0e8730cad349b54d67581b4c73
Author: Fangrui Song <i at maskray.me>
Date: 2021-11-30 (Tue, 30 Nov 2021)
Changed paths:
M lld/ELF/Driver.cpp
M lld/test/ELF/driver.test
Log Message:
-----------
[ELF] Change -z unknown from error to warning
There is a trend of having more optional options (usually security
hardening related) like -z cet-report=, -z bti-report=, -z force-bti.
If ld.lld 14.0.0 uses a warning, in 15/16/17/... timeframe when people
add new options to software, they can worry less about linker errors on ld.lld 14.0.0.
In some cases `-z foo` does essential work where a silent ignore can be
problematic, but the user has received a warning. From my observation, the
doing-essential-work `-z foo` is much fewer than the converse. In addition,
the user who cares can use `--fatal-warnings` (Note: GNU ld doesn't upgrade warnings to errors).
It is unclear whether we need something like `clang -Wunknown-warning-option`.
If we ever run into unfortunate transition like `-z start-stop-gc`, the
affected software (e.g. ldc is a compiler which passes linker options to the underlying ld)
can blindly add the `-z` option, without worrying it may cause a linker error to LLD 14.0.0.
Reviewed By: jrtc27, peter.smith
Differential Revision: https://reviews.llvm.org/D114748
More information about the All-commits
mailing list