🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.g++.help
Article #545

Compilation error not understood

#545
From: Brian McGinnis
Date: Thu, 16 May 1991 13:44
37 lines
2440 bytes
Hi,

I am trying to compile the 3.0 version of NIHCL libraries with g++ version
1.37.  I keep recieving the following error message and can't seem to 
interpret it. 

Object.h: In function class Class &static Class::castdown (class Object &):
In file included from Collection.h:28, from ArrayOb.h:28, from ArrayOb.c:38:
Object.h:383: type `Class' is not a base type for type `Object'
Object.h: In function const class Class &static Class::castdown (const class Object &):
Object.h:383: type `Class' is not a base type for type `Object'
Collection.h: In function class Collection &static Collection::castdown (class Object &):
In file included from ArrayOb.h:28, from ArrayOb.c:38:Collection.h:38: type `Collection' is not a base type for type `Object'
Collection.h: In function const class Collection &static Collection::castdown (const class Object &):
Collection.h:38: type `Collection' is not a base type for type `Object'


he error occurs in MACRO that is called withing the class definitions.
The macro is as defined below

#define DECLARE_CASTDOWN(classname) \
        static classname& castdown(Object& p)                   { return (classname&)p; } \
        static const classname& castdown(const Object& p)       { return (const classname&)p; } \
        static classname* castdown(Object* p)                   { return (classname*)p; } \
        static const classname* castdown(const Object* p)       { return (const classname*)p; } \


If you recognize this error or could give me any suggestions at all I 
would be greatly appreciative.  I really like using the g++ compiler,
its seems to be the quickest, gives the most options, and best feedback
of the c++ compilers I have used( AT&T and Glockenspiel).  But if I cant't
get it to compile the NIHCL I will have to abandon it, Please help.

Thanks,

Brian McGinnis
mcginnis@mcginnis.aa.cad.slb.com
Technical Details
Message-ID: <9105161344.AA21450@applga.aa.cad.slb.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!uwm.edu!linac!att!ucbvax!tut.cis.ohio-state.edu!unreplyable!garbage

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!uwm.edu!linac!att!ucbvax!tut.cis.ohio-state.edu!unreplyable!garbage
From: applga!mcginnis@SHARKEY.CC.UMICH.EDU (Brian McGinnis)
Newsgroups: gnu.g++.help,comp.lang.c++
Subject: Compilation error not understood
Message-ID: <9105161344.AA21450@applga.aa.cad.slb.com>
Date: 16 May 91 13:44:53 GMT
Sender: daemon@tut.cis.ohio-state.edu
Followup-To: gnu.g++.help
Organization: Gatewayed from the GNU Project mailing list help-g++@prep.ai.mit.edu
Lines: 37