ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Paul Wolneykien <manowar@altlinux.org>
To: devel@lists.altlinux.org
Subject: Re: [devel] Обновление protobuf
Date: Sat, 22 Feb 2025 23:32:01 +0300
Message-ID: <20250222233201.67c1db57@legato> (raw)
In-Reply-To: <20250221214431.nfebygcjfqogqzuc@altlinux.org>

В Sat, 22 Feb 2025 00:44:31 +0300
Vitaly Chikunov <vt@altlinux.org> пишет:

> Paul,
> 
> On Fri, Feb 21, 2025 at 11:56:25PM +0300, Paul Wolneykien wrote:
> > В Fri, 21 Feb 2025 22:13:55 +0300
> > скрылевъ малъ <majioa@yandex.ru> пишет:
> >   
> > >  
> > >  
> > > ----------------
> > > Кому: devel@lists.altlinux.org (devel@lists.altlinux.org);
> > > Тема: [devel] Обновление protobuf;
> > > 21.02.2025, 12:44, "Anton Farygin" <rider@basealt.ru>:
> > >   
> > > > On 20.02.2025 19:37, Paul Wolneykien wrote:    За прошедшее время я несколько раз перезапускал задание по причине  
> > > >>  нового libabseil и ещё некоторых сложностей. Сегодня удалось обновить
> > > >>  и запатчить fcitx5-mozc. Других существенных изменений не произошло.  
> > > > 
> > > > 
> > > > Непонятно что делать с grpc  
> > > А что съ нимъ дѣлать? Я его обновлять хотѣлъ, только для него 29й нуженъ protobuf....  
> > 
> >   Не, у меня с 25 собрался (3.25.5) с минорными послаблениями. Но тут
> > ещё один товарищ вызвался в рассылке, поэтому я пока уступил.
> > 
> >   Вот, почти рабочий вариант (собирается с заданием, если сделать
> > -Wno-error=return-type):
> > 
> >     https://git.altlinux.org/people/manowar/packages/?p=grpc.git;a=shortlog;h=refs/heads/master
> > 
> > /usr/src/RPM/BUILD/grpc-1.70.1/src/core/lib/transport/call_state.h: In static member function 'static const char* grpc_core::CallState::ClientToServerPullStateString(ClientToServerPullState)
> > ':
> > /usr/src/RPM/BUILD/grpc-1.70.1/src/core/lib/transport/call_state.h:157:3: error: control reaches end of non-void function [-Werror=return-type]
> >   157 |   }
> > 
> >   При этом по смыслу ошибка должна быть "switch", потому что там switch
> > в этой функции, и всё. Однако впрямую он не говорит, мол, не все кейсы
> > у вас тут перечислены. Ну а ежели все перечислены, то почему тогда
> > return не хватает? Загадка.  
> 
> -Wswitch не включен по умолчанию.
> 
>   $ gcc -O -Q --help=warning | grep swit
>     -Wswitch                              [disabled]
>     -Wswitch-bool                         [enabled]
>     -Wswitch-default                      [disabled]
>     -Wswitch-enum                         [disabled]
>     -Wswitch-outside-range                [enabled]
>     -Wswitch-unreachable                  [enabled]

  Там ситуация следующая: есть 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?
А как тогда собирают в апстриме? \(oo)/


  reply	other threads:[~2025-02-22 20:32 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-12 12:46 Paul Wolneykien
2025-02-12 13:33 ` Paul Wolneykien
2025-02-12 14:18   ` Paul Wolneykien
2025-02-12 14:44     ` Yuri Sedunov
2025-02-12 14:58       ` Sergey V Turchin
2025-02-12 16:08     ` Anton Farygin
2025-02-12 21:02       ` Paul Wolneykien
2025-02-13  4:19         ` Anton Farygin
2025-02-13  7:35           ` Paul Wolneykien
2025-02-13  7:45             ` Sergey V Turchin
2025-02-13  8:27               ` Paul Wolneykien
2025-02-13  8:34                 ` Sergey V Turchin
2025-02-13  8:46                   ` Ivan A. Melnikov
2025-02-13 23:36                     ` Alexey V. Vissarionov
2025-02-14  6:11                       ` Sergey V Turchin
2025-02-13  8:36             ` Ivan A. Melnikov
2025-02-14  8:42             ` Paul Wolneykien
2025-02-20 16:37               ` Paul Wolneykien
2025-02-21  9:43                 ` Anton Farygin
2025-02-21 13:06                   ` Constantin Sunzow
2025-02-21 20:56                     ` Paul Wolneykien
2025-02-21 21:44                       ` Vitaly Chikunov
2025-02-22 20:32                         ` Paul Wolneykien [this message]
2025-02-22 20:40                           ` Vitaly Chikunov
2025-02-26  6:33                             ` Paul Wolneykien
2025-02-26  8:15                               ` Vitaly Chikunov
2025-02-26  6:05                       ` Paul Wolneykien
2025-02-26 10:24                         ` Paul Wolneykien
2025-02-26 11:07                           ` Ivan A. Melnikov
2025-02-27 15:28                           ` Paul Wolneykien
2025-03-05 19:43                         ` [devel] Обновление protobuf: прошу выдать апрувы Paul Wolneykien
2025-03-07  8:54                           ` [devel] Обновление protobuf Paul Wolneykien
2025-03-07 11:23                             ` Anton Farygin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250222233201.67c1db57@legato \
    --to=manowar@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git