delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2000/08/30/06:32:33

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Message-ID: <003901c0126d$8b47fd20$3e5d6dc2@HONDA>
From: "robin 'xer.xes' putters" <robin AT games DOT lostboys DOT com>
To: <cygwin AT sources DOT redhat DOT com>
Subject: Incorrect behaviour of the compiler in C++
Date: Wed, 30 Aug 2000 12:32:02 +0200
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.00.3018.1300
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.3018.1300

------=_NextPart_000_0036_01C0127E.4C4F0440
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit

The following code should speak for itself. Looks like something goes wrong
with the way GCC is handling typedef's..

Is this a known bug? Is there a patch for it?

(btw. I've tried various compilers. 2.7.2.3 on linux, 2.91.something on
linux, 2.95.2 on playstation, windows (cygwin), and linux.)

//
// test.cpp(34) : conflicting types for `typedef const class ClsRef
constClsRef'
// test.cpp(29) : previous declaration as `typedef class Templ<Cls>
constClsRef'
//

//
// Just a class
//
class Cls;

//
// Just a template
//
template <typename taTYPE> class Templ;

//
//
//
typedef Templ<Cls> ClsRef;

//
// First forward declaration
//
typedef const ClsRef constClsRef;

//
// Second forward declaration
//
typedef const ClsRef constClsRef;  // line 29

//
// Third forward declaration.
//
typedef const ClsRef constClsRef;  // line 34




robin 'xer.xes' putters
lost boys games
robin AT games DOT lostboys DOT com

------=_NextPart_000_0036_01C0127E.4C4F0440
Content-Type: application/octet-stream;
	name="test.cpp"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="test.cpp"

//
// test.cpp(34) : conflicting types for `typedef const class ClsRef =
constClsRef'
// test.cpp(29) : previous declaration as `typedef class Templ<Cls> =
constClsRef'
//

//
// Just a class
//
class Cls;

//
// Just a template
//
template <typename taTYPE> class Templ;

//
//=20
//
typedef Templ<Cls> ClsRef;

//
// First forward declaration
//
typedef const ClsRef constClsRef;	=09

//
// Second forward declaration
//
typedef const ClsRef constClsRef;		// line 29

//
// Third forward declaration.
//
typedef const ClsRef constClsRef;		// line 34


------=_NextPart_000_0036_01C0127E.4C4F0440
Content-Type: text/plain; charset=us-ascii

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
------=_NextPart_000_0036_01C0127E.4C4F0440--

- Raw text -


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