[devel] Обновление protobuf

Paul Wolneykien manowar на altlinux.org
Ср Фев 26 09:33:47 MSK 2025


В Sat, 22 Feb 2025 23:40:50 +0300
Vitaly Chikunov <vt на altlinux.org> пишет:

> >   Там ситуация следующая: есть enum и функция константа -> в строку
> > через switch:
> > 
> > https://git.altlinux.org/people/manowar/packages/?p=grpc.git;a=blob;f=src/core/lib/transport/call_state.h;h=27d5b8517aca81cb893e03afa1d7f465f3bfc0f7;hb=a6364bdb126e0e5fd969bc66c58319c781b39501#l127
> > 
> >   Так вот, если убрать один из кейсов, то будет ошибка вида
> > -Werror=switch, а если добавить "default", то пропадает ошибка
> > -Werror=return-type (control reaches end of non-void function).
> > Что имеет в виду компилятор? Что несмотря на перечисление всех
> > определённых для enum вариантов остаётся вероятность того, что
> > в функцию прилетит произвольное число и поэтому нужен default?  
> 
> https://gcc.gnu.org/wiki/VerboseDiagnostics#enum_switch

  Спасибо, стало гораздо понятнее.

> > А как тогда собирают в апстриме? \(oo)/

  А вот это всё ещё нет. (><) Что тут можно сделать кроме того, что

    а) запатчить исходники добавив "default:";
    б) включить -Wno-error=return-type (что я и сделал)?


Подробная информация о списке рассылки Devel