Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: [PATCH] _gcc: Improve completer for _clang and _gcc



On 18 June 2018 at 00:44, Mikael Magnusson <mikachu@xxxxxxxxx> wrote:
> On Mon, Jun 18, 2018 at 7:14 AM, Eitan Adler <lists@xxxxxxxxxxxxxx> wrote:
>> clang - add additional sanitizers
>> both - add additional standards (basically, aliases)
>> both - fix -flto
>>
>> Signed-off-by: Eitan Adler <lists@xxxxxxxxxxxxxx>
>> ---
>>  Completion/Unix/Command/_gcc | 22 ++++++++++++++++++----
>>  1 file changed, 18 insertions(+), 4 deletions(-)
>>
>> diff --git a/Completion/Unix/Command/_gcc b/Completion/Unix/Command/_gcc
>> index a552bb2db..9690df79f 100644
>> --- a/Completion/Unix/Command/_gcc
>> +++ b/Completion/Unix/Command/_gcc
>> @@ -338,16 +338,31 @@ h8/300)
>>    ;;
>>  esac
>>
>> +local -a sanitizers
>>  if [[ "$service" = clang* ]]; then
>>      args=(
>>          $args
>> -        -flto -emit-llvm
>> +        "-flto=-[generate output files suitable for link time optimization]::style:(full thin)"
>> +        -emit-llvm
>>          "-Qunused-arguments[don't emit warning for unused driver arguments]"
>>          --analyze
>>          -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
>
> Did you mean to add this list under the gcc case?

No. Those are the list supported by clang. I didn't do a full audit,
but gcc supports fewer of them. It may support more than the list I
included, but this is not a regression.

Its hard to test gcc since it just errors out with "/usr/local/bin/ld:
cannot find -lubsan" when testing and I don't want to go down the
rabbit hole of debugging that right now.



-- 
Eitan Adler



Messages sorted by: Reverse Date, Date, Thread, Author