From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6149 invoked by alias); 28 Jul 2011 15:44:32 -0000 Received: (qmail 6131 invoked by uid 22791); 28 Jul 2011 15:44:31 -0000 X-SWARE-Spam-Status: No, hits=-7.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,SPF_HELO_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 28 Jul 2011 15:44:14 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p6SFi1jw027884 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 28 Jul 2011 11:44:01 -0400 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p6SFi0gn013368; Thu, 28 Jul 2011 11:44:01 -0400 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id p6SFhxdB008084; Thu, 28 Jul 2011 11:43:59 -0400 From: Tom Tromey To: Joel Brobecker Cc: pmuldoon@redhat.com, Eli Zaretskii , gdb@sourceware.org Subject: Re: py-breakpoint.c fails to compile with MinGW GCC References: <20110728151915.GU1988@adacore.com> Date: Thu, 28 Jul 2011 15:44:00 -0000 In-Reply-To: <20110728151915.GU1988@adacore.com> (Joel Brobecker's message of "Thu, 28 Jul 2011 08:19:15 -0700") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2011-07/txt/msg00112.txt.bz2 Joel> It does compile for me too. Could be a compiler age issue? I asked Kai and that is what he thinks. The Python docs don't say much: We=E2=80=99d like to just assign this to the tp_new slot, but we can=E2= =80=99t, for portability sake, On some platforms or compilers, we can=E2=80=99t stat= ically initialize a structure member with a function defined in another C module, so, instead, we=E2=80=99ll assign the tp_new slot in the module initialization function just before calling PyType_Ready(): See http://docs.python.org/extending/newtypes.html Joel> Just wondering out loud - if we were to use a C++ compiler, would Joel> it allow us to use non-static initializers like in this case? Joel> I'm under the impression that C++ provides elaboration, so Joel> non-static initialization should be do-able... That would work; and while I want to do this, I think it is simpler to just fix the initializations. Or, just require people to use a newer GCC; 3.4 is 5 years old at this point. Tom