| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
|---|---|
| To: | Chris Ruprecht <chris(at)cdrbill(dot)com> | 
| Cc: | pgsql-hackers(at)postgreSQL(dot)org | 
| Subject: | Re: [GENERAL] OS X 10.11.3, psql, bus error 10, 9.5.1 | 
| Date: | 2016-03-12 22:58:11 | 
| Message-ID: | 19034.1457823491@sss.pgh.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-general pgsql-hackers | 
I wrote:
> That's confusing because it implies that -fno-common is the default,
> which it evidently is not.  But anyway, my diagnosis is that you're
> breaking something about the linker's behavior with that switch.
Oh! Looking closer, the core dump happens here:
const printTextFormat pg_utf8format;
printTextFormat *popt = (printTextFormat *) &pg_utf8format;
--> popt->name = "unicode";
So apparently, the relevant property of "-fno-common" is that it
causes "const" variables to actually get placed in read-only data.
I think this code is new in 9.5, which'd explain why you didn't see
the failure with older PG versions.  It's surely busted though.
I shall get rid of the const-ness, as well as the lame casting away
of it, and I think I will also go make buildfarm member longfin use
"-fno-common".  It is truly sad that we apparently have no test
machine that enforces that const means const ...
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Karsten Hilbert | 2016-03-12 23:09:19 | pg_restore fails | 
| Previous Message | Tom Lane | 2016-03-12 22:34:48 | Re: OS X 10.11.3, psql, bus error 10, 9.5.1 | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tomas Vondra | 2016-03-12 23:15:14 | Re: Refectoring of receivelog.c | 
| Previous Message | Peter Geoghegan | 2016-03-12 22:53:52 | Re: Refactoring speculative insertion with unique indexes a little |