Previously, that was an alias to -color-diagnostics=auto. However,
Clang's -fcolor-diagnostics is an alias to -fcolor-diagnostics=always,
so that was confusing. This patch fixes that issue.
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@290332 91177308-0d34-0410-b5e6-96231b3b80d8
Previously, some errors that were checked before we set to
Config->ColorDiagnostics weren't colored. This patch moves the code
to set the variable so that such error messages are colored just like
other error messages.
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@290157 91177308-0d34-0410-b5e6-96231b3b80d8
I thought for a while about how to remove it, but it looks like we
can just copy the file for now. Of course I'm not happy about that,
but it's just less than 50 lines of code, and we already have
duplicate code in Error.h and some other places. I want to solve
them all at once later.
Differential Revision: https://reviews.llvm.org/D27819
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@290062 91177308-0d34-0410-b5e6-96231b3b80d8
The feature is documented as
-----------------------------
The format of the dynamic list is the same as the version node
without scope and node name. See *note VERSION:: for more
information.
--------------------------------
And indeed qt uses a dynamic list with an 'extern "C++"' in it. With
this patch we support that
The change to gc-sections-shared makes us match bfd. Just because we
kept bar doesn't mean it has to be in the dynamic symbol table.
The changes to invalid-dynamic-list.test and reproduce.s are because
of the new parser.
The changes to version-script.s are the only case where we change
behavior with regards to bfd, but I would like to see a mix of
--version-script and --dynamic-list used in the wild before
complicating the code.
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@289082 91177308-0d34-0410-b5e6-96231b3b80d8
We do not have an option taking more than one arguments,
so we can just say "missing argument" instead of "missing argument(s)".
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@287454 91177308-0d34-0410-b5e6-96231b3b80d8
Previously, we have a lot of BumpPtrAllocators, but all these
allocators virtually have the same lifetime because they are
not freed until the linker finishes its job. This patch aggregates
them into a single allocator.
Differential revision: https://reviews.llvm.org/D26042
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@285452 91177308-0d34-0410-b5e6-96231b3b80d8
This flag is implemented similarly to --reproduce in the ELF linker.
This patch implements /linkrepro by moving the cpio writer and associated
utility functions to lldCore, and using that implementation in both linkers.
One COFF-specific detail is that we store the object file from which the
resource files were created in our reproducer, rather than the resource
files themselves. This allows the reproducer to be used on non-Windows
systems for example.
Differential Revision: https://reviews.llvm.org/D22418
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@276719 91177308-0d34-0410-b5e6-96231b3b80d8
warning() depends on Config->FatalWarnings, so we don't want to call
that function before we initialize that member.
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@274723 91177308-0d34-0410-b5e6-96231b3b80d8
Otherwise when extracting these files on a unix system one
ends up with files named like "repro\bar\foo.o".
git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@274622 91177308-0d34-0410-b5e6-96231b3b80d8