delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2003/11/16/16:30:43

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <20031116213023.18918.qmail@web21401.mail.yahoo.com>
Date: Mon, 17 Nov 2003 08:30:23 +1100 (EST)
From: =?iso-8859-1?q?Danny=20Smith?= <danny_r_smith_2001 AT yahoo DOT co DOT nz>
Subject: RE: Exporting const variables from DLLs (GCC bug?)
To: cygwin AT cygwin DOT com
MIME-Version: 1.0

Jon Foster wrote:

> Given this source code: 
> extern const int meaning_of_life __declspec(dllexport);
> const int meaning_of_life __declspec(dllexport) = 42;
> 
> 
> GCC complains: 
> $ c++ -g -O2 -c test.cxx -o test.o
> test.cxx:2: error: external linkage required for symbol 'const int
>    meaning_of_life' because of 'dllexport' attribute
>


It is a bug in gcc.  The above code compiles okay with C, but
strangely, not C++.  For some reason, g++ does not immediately
mark the the definition of global constants as public when they
are defined after a prior declaration.  I have a fix that I will
submit to gcc-patches after reg-testing

Danny

http://personals.yahoo.com.au - Yahoo! Personals
New people, new possibilities. FREE for a limited time.

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019