From 03b2cd1bb013212d1f6c2b897156ac87b455c2ee Mon Sep 17 00:00:00 2001 From: Eitan Adler Date: Tue, 19 Jun 2018 23:54:55 +0000 Subject: 43074: Completion for additional linker options for clang and sanitizers for gcc --- Completion/Unix/Command/_gcc | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'Completion/Unix/Command/_gcc') diff --git a/Completion/Unix/Command/_gcc b/Completion/Unix/Command/_gcc index 9690df79f..5817318f6 100644 --- a/Completion/Unix/Command/_gcc +++ b/Completion/Unix/Command/_gcc @@ -338,7 +338,6 @@ h8/300) ;; esac -local -a sanitizers if [[ "$service" = clang* ]]; then args=( $args @@ -349,21 +348,23 @@ if [[ "$service" = clang* ]]; then -fshow-column -fshow-source-location -fcaret-diagnostics -fdiagnostics-fixit-info -fdiagnostics-parseable-fixits -fdiagnostics-print-source-range-info -fprint-source-range-info -fdiagnostics-show-option -fmessage-length - ) - sanitizers=( - address alignment bool bounds enum float-cast-overflow float-divide-by-zero - integer-divide-by-zero memory nonnull-attribute null nullability-arg nullability-assign - nullability-return object-size pointer-overflow return unsigned-integer-overflow - returns-nonnull-attribute shift signed-integer-overflow unreachable vla-bound vptr + "-nostdinc[Do not search standard system directories or compiler builtin directories for include files]" + "-nostdlibinc[Do not search standard system directories for include files]" + "-nobuiltininc[Do not search builtin directory for include files]" ) else args=( '-flto=-[Enable link-time optimization]::jobs:' ) +fi + +local -a sanitizers sanitizers=( - address memory + address alignment bool bounds enum float-cast-overflow float-divide-by-zero + integer-divide-by-zero memory nonnull-attribute null nullability-arg nullability-assign + nullability-return object-size pointer-overflow return unsigned-integer-overflow + returns-nonnull-attribute shift signed-integer-overflow unreachable vla-bound vptr ) -fi local -a languages languages=( @@ -965,7 +966,7 @@ args+=( args+=( '-nostartfiles[Do not use the standard system startup files when linking]' '-nodefaultlibs[Do not use the standard system libraries when linking]' - '-nostdlib[Do not use the standard system startup files or libraries when linking]' + '-nostdlib[Do not use standard system startup files or libraries when linking]' '-rdynamic[Pass the flag -export-dynamic to the ELF linker, on targets that support it]' '-s[Remove all symbol table and relocation information from the executable]' '-static[On systems that support dynamic linking, this prevents linking with the shared libraries]' -- cgit 1.4.1