X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:to:cc:subject:in-reply-to:message-id
	:references:mime-version:content-type; q=dns; s=default; b=ReIHE
	KHJAv1zCOOXaHpBDHmA2irXzA8y66110fQSSxh9DYTSQ0UVAxnvdrJEuVcCUrjKe
	+zbS3MSCxuN1Zwt43vF7dBhtRHxUhkMMKS7G3ZBh299MzJtFvuDEQPzI5P9LUTZ7
	JD/Lo0oBjR4dak3Koe1v/S2qiK7OlJS5OkFMzs=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:date:from:to:cc:subject:in-reply-to:message-id
	:references:mime-version:content-type; s=default; bh=Y2ATiFxjrGi
	X6Qoa9BUCpQbdgwk=; b=W6z2/lm/vATNFPifuKQ4AUfZqLlnRz1okgmnNhmJ8gy
	WtyRVA6ibmDaIGg1BzBHUiYM3zT+vQEFZ0e2c6AuHOFlecWUv5NU2hxsUVbefrCU
	2/eMCLJdtJ+yuw7S8ukaY5I2ABSomkpZTwy5QweEfahWauQfnsKaNuw72m3wwCXM
	=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 spammy=breach
X-HELO: ppsw-33.csi.cam.ac.uk
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=cam.ac.uk;	 s=20180806.ppsw; h=Content-Type:MIME-Version:References:Message-ID:	In-Reply-To:Subject:cc:To:From:Date:Sender:Reply-To:Content-Transfer-Encoding	:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender:	Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:	List-Subscribe:List-Post:List-Owner:List-Archive;	bh=M5WnLJaj4Sujn2pntMPYEWrS0Cfo92im79wWrZ23ETk=; b=tlYsopJNsgzlcB0u+863XHW/xt	Kkh+TADzs/G/IviSpb97GYvvtcuHonUeYZIcgWCqERxhykqdxYxugif6qixag43525a4rf0y9Hxo+	Kfp3nhNxu1GBPcLnAvtgv//RrzdFSmXn3kwKoQNss0aTkGIin5lUnGN4vXn7OWijatwY=;
Date: Fri, 15 Nov 2019 07:55:30 +0000 (GMT Standard Time)
From: Arthur Norman <acn1@cam.ac.uk>
To: Brian Inglis <Brian.Inglis@SystematicSw.ab.ca>
cc: cygwin@cygwin.com
Subject: Re: linker fails with multiple definitions after inline thread_local var within class
In-Reply-To: <f5b26568-67dc-1dfe-a35b-248f1644aed9@SystematicSw.ab.ca>
Message-ID: <alpine.WNT.2.00.1911150742490.125704@panamint>
References: <alpine.WNT.2.00.1911141816490.14912@panamint> <f5b26568-67dc-1dfe-a35b-248f1644aed9@SystematicSw.ab.ca>
User-Agent: Alpine 2.00 (WNT 1167 2008-08-23)
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
X-IsSubscribed: yes

> You appear to be running into a conflict with Cygwin managing Windows TLS, as
> Cygwin does its own messing around to support Unix/Linux/POSIX/g++ semantics for
> TLS and everything else under Windows. You should either use the supplied API,
> or write a Windows program that allows you to control TLS within Windows rules
> on what you can do with it. Otherwise you will have to get deep into the
> changeable and not directly supported underbelly of the Cygwin implementation.

Than you for the prompt response, but while the motivation for my example 
involved the Windows native TLS API the sample code that fails to link for 
me does not touch that at all and tried to be generic C++ code. Where it 
superficially appears that the cygwin TLS initialization code fails to 
pick up the "inline" attribute that I believe it should inherit from the 
fact that the TLS fields and methods that I use are inline and hence 
allowed to be defined/declared multiple times. So does my sample code that 
fails breach the C++ standard or is this a Cygwin limitation please? 
Arthur

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

