Re: master make check fails on Solaris 10

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Marina Polyakova <m.polyakova@postgrespro.ru>
Cc: vitus@wagner.pp.ru, Andres Freund <andres@anarazel.de>, pgsql-hackers@postgresql.org, Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: 2018-01-17T15:07:37Z
Lists: pgsql-hackers
Marina Polyakova <m.polyakova@postgrespro.ru> writes:
> investigating the regression diffs, we found out that the error occurs 
> when we pass int128 as not the first argument to the function (perhaps 
> its value is replaced by the value of some address):
> ...
> Based on this, we modified the test program (see attached). Here is its 
> output on Solaris 10 for different alignments requirements for int128 
> (on my machine where make check-world passes everything is OK) 
> (ALIGNOF_PG_INT128_TYPE is 16 on Solaris 10):

Excellent.  This fails the same way on gcc 5.2.0 and 5.5.0?

> Maybe some pass test from int128test2.c can be used to test __int128?

Yeah, I can work with this.  What I propose to do is use a somewhat
stripped-down version of this test as an AC_RUN_IFELSE test normally,
but if cross-compiling, fall back to just seeing if we can link.

Thanks for investigating!

			regards, tom lane


Commits

  1. Extend configure's __int128 test to check for a known gcc bug.

  2. Reorder C includes

  3. Ability to advance replication slots

  4. doc: add JSON acronym

  5. Expression evaluation based aggregate transition invocation.

  6. Change some bogus PageGetLSN calls to BufferGetLSNAtomic

  7. Prevent int128 from requiring more than MAXALIGN alignment.

  8. Rearrange c.h to create a "compiler characteristics" section.

  9. Make OWNER TO subcommand mention consistent