From paul at stat.auckland.ac.nz  Thu Feb 15 22:21:32 2018
From: paul at stat.auckland.ac.nz (Paul Murrell)
Date: Fri, 16 Feb 2018 10:21:32 +1300
Subject: [Rd] missing extern in GraphicsBase.h
In-Reply-To: <20180215143952.GA28628@hilbert>
References: <20180215143952.GA28628@hilbert>
Message-ID: <f2391c5b-e3b2-ecc6-b7b6-46d0162f60a4@stat.auckland.ac.nz>

Hi

I have committed the suggested "extern" patch.

Could you please confirm that this fixes the issue on Solaris (and 
anything else you can test) ?

Thanks!

Paul

On 16/02/18 03:39, dmitrii.pasechnik at maths.ox.ac.uk wrote:
> Dear all,
> in src/include/GraphicsBase.h one has a declaration
> 
> int baseRegisterIndex;
> 
> the same as in src/main/devices.c
> 
> which causes problems on Solaris, see bug #17385,
> and other platforms with "unusual" linkers, see bug #16633.
> 
> By right, global variables like baseRegisterIndex are to be
> declared just once, and not in a header file, but in a *.c file.
> Then, to use them elsewhere in the code, one declares them as
> extern in the header.
> (as proposed on #17385)
> 
> Otherwise one has an undefined behaviour,
> some linkers might silently prepend extern, some not...
> 
> May I humbly request attention to this bug
> (which is classified as UNCONFIRNMED---and indeed it needs an extra
> effort to reproduce the error on, say, Linux --- but it really is an obvious C
> bug, which will rear its ugly head sooner or later again)
> 
> Thanks,
> Dmitrii
> 
> 
> 
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
> 

-- 
Dr Paul Murrell
Department of Statistics
The University of Auckland
Private Bag 92019
Auckland
New Zealand
64 9 3737599 x85392
paul at stat.auckland.ac.nz
http://www.stat.auckland.ac.nz/~paul/



[Rd] missing extern in GraphicsBase.h
Paul Murrell