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 05:37, Mikael Magnusson <mikachu@xxxxxxxxx> wrote:
> On Mon, Jun 18, 2018 at 9:49 AM, Eitan Adler <lists@xxxxxxxxxxxxxx> wrote:
>> 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.
>
> Well, you remove "thread" and add "memory" instead for gcc,

That was a pure mistake. I intended to keep the original

> and the
> manpage does list all values supported by gcc.

Good to know. I see this was committed already, but perhaps let's move
it out of the conditional?


-- 
Eitan Adler



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