X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 	tests=AWL,BAYES_00,SPF_PASS
X-Spam-Check-By: sourceware.org
Message-ID: <4A8D6558.8080404@gmail.com>
Date: Thu, 20 Aug 2009 16:01:44 +0100
From: Dave Korn <dave.korn.cygwin@googlemail.com>
User-Agent: Thunderbird 2.0.0.17 (Windows/20080914)
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: find(1) memory leak in cygheap
References: <c8a3efee0908190447l11062bf1waba8ca9df5581468@mail.gmail.com> 	 <20090819140322.GB8713@ednor.casa.cgf.cx> 	 <c8a3efee0908190804i4130ecbfp7561934ab2272da8@mail.gmail.com> 	 <c8a3efee0908192309k4e207b4fs662d2c2baae8c0a2@mail.gmail.com> 	 <20090820083926.GJ32408@calimero.vinschen.de> <c8a3efee0908200323v6ffc605cuc74b45533bf99048@mail.gmail.com> <4A8D396D.8000209@gmail.com> <4A8D3EFD.9080704@sbcglobal.net>
In-Reply-To: <4A8D3EFD.9080704@sbcglobal.net>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
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

Greg Chicares wrote:
> On 2009-08-20 11:54Z, Dave Korn wrote:
>> [...]  (Hmm, now there's an idea.  GCC needs an
>> __attribute__ that you can tag onto a class to say it must be a POD-type and
>> get a compiler error if anyone ever adds a virtual function or anything else
>> that would make the layout non-POD.)
> 
> http://groups.google.com/group/comp.lang.c++.moderated/msg/71ae531aa27e70c5
> | GCC 4.3.1 provides the __is_pod extension
> ...
> | tr1/type_traits is implemented using __is_pod
> 
> Combining that with static_assert, I suppose you could write
> this restriction in standard C++ (TR1) instead of creating a
> new __attribute__.

  Ooh, nice trick.  Thanks.

    cheers,
      DaveK


--
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

