public inbox for [email protected]  
help / color / mirror / Atom feed
From: David Rowley <[email protected]>
To: Tom Lane <[email protected]>
Cc: Masahiko Sawada <[email protected]>
Cc: [email protected]
Subject: Re: pgsql: pg_logicalinspect: Fix possible crash when passing a directory p
Date: Wed, 12 Mar 2025 19:38:50 +1300
Message-ID: <CAApHDvow4CPgEyHWuSpfMQN8vRYrMgMTOqsy2SwNbQruPVV0rw@mail.gmail.com> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<CAApHDvqrhFfnetbcwgGkJ=z63T8HfQ_OyP=vX8BYiXyxFKt67w@mail.gmail.com>
	<CAD21AoDQJdQG3V3zvH7x9rEF97E8VD5OarArfpY+f4bEK5wNkw@mail.gmail.com>
	<[email protected]>

On Wed, 12 Mar 2025 at 18:18, Tom Lane <[email protected]> wrote:
> I don't know of an easy way.  I experimented with doing this:
>
> diff --git a/src/include/c.h b/src/include/c.h
> index a14c6315162..467b1f58ae8 100644
> --- a/src/include/c.h
> +++ b/src/include/c.h
> @@ -315,7 +315,7 @@
>  #elif defined(_MSC_VER) && !defined(USE_ASSERT_CHECKING)
>  #define pg_unreachable() __assume(0)
>  #else
> -#define pg_unreachable() abort()
> +#define pg_unreachable() ((void) 0)
>  #endif
>
>  /*
>
> which seems like it ought to be enough to provoke such warnings
> (in assert-enabled builds).  I got upwards of sixty build warnings
> this way, but the place David mentions was *not* among them.
> So I'm confused.

Doing that for me does show the new warning.

drowley@amd7945hx:~/pg_src$ meson setup -Dcassert=true build >
/dev/null && cd build && ninja | grep pg_logicalinspect.c
[1962/2356] Compiling C object
contrib/pg_logicalinspect/pg_logicalinspect.so.p/pg_logicalinspect.c.o
../contrib/pg_logicalinspect/pg_logicalinspect.c: In function
‘parse_snapshot_filename’:
../contrib/pg_logicalinspect/pg_logicalinspect.c:88:1: warning:
control reaches end of non-void function [-Wreturn-type]
drowley@amd7945hx:~/pg_src$ gcc --version
gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0

David





view thread (16+ messages)  latest in thread

reply

Reply instructions:

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

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected]
  Subject: Re: pgsql: pg_logicalinspect: Fix possible crash when passing a directory p
  In-Reply-To: <CAApHDvow4CPgEyHWuSpfMQN8vRYrMgMTOqsy2SwNbQruPVV0rw@mail.gmail.com>

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

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox