This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Assembler error on Solaris
- To: egcs-bugs at cygnus dot com
- Subject: Assembler error on Solaris
- From: Stuart Whitman <stu at s3i dot com>
- Date: Thu, 19 Nov 1998 09:27:06 -0500 (EST)
g++ -v
Reading specs from
/export/home0/tmp/egcs/lib/gcc-lib/sparc-sun-solaris2.5.1/egcs-2.91.57/specs
gcc version egcs-2.91.57 19980901 (egcs-1.1 release)
g++ -c foo.cc
/var/tmp/ccA47kAF.s: Assembler messages:
/var/tmp/ccA47kAF.s:243: Fatal error: Symbol _._t10SimSetLink1Z5AdMgr
already defined.
This error happens with both Solaris as and Gnu as.
Machine info:
uname -a
SunOS blackbird 5.5.1 Generic sun4m sparc SUNW,SPARCstation-20
------------------------------------------------------
Stuart Whitman System Simulation Solutions, Inc
703 684 8268 1700 Diagonal Road, STE 500
Fax: 703 684 8272 Alexandria, VA 22314
template <class T> class SimSet {
};
template <class T> class SimSetLink {
};
template < class Parent,
class Child,
SimSet<Child> Parent::* Root,
SimSetLink<Child> Child::* Link >
class SimSetInstance {
Parent * d_parent;
typedef SimSetInstance InstanceType;
public:
SimSetInstance (const InstanceType & src)
: d_parent (src.d_parent)
{
}
~SimSetInstance () {}
class Iterator;
friend class Iterator;
class Iterator {
public:
Iterator (InstanceType setp)
{
}
~Iterator () {}
Child * operator () ()
{
}
};
};
class AdMgr {
public:
SimSetLink <AdMgr> d_admgr_grid_member;
};
class FlightGroup;
class AdGridCell {
public:
SimSet<AdMgr> d_admgr_grid_owner;
~AdGridCell();
};
typedef SimSetInstance < AdGridCell,
AdMgr ,
& AdGridCell::d_admgr_grid_owner,
& AdMgr::d_admgr_grid_member > GridAdSiteSet ;
class AirGrid {
public:
static AirGrid* instance();
GridAdSiteSet getAirDef(FlightGroup* fg);
};
class Surface2AirAdjudicationMgr {
public:
Surface2AirAdjudicationMgr () {}
~Surface2AirAdjudicationMgr () {}
public:
static void Adjudicate(FlightGroup* fg);
};
void
Surface2AirAdjudicationMgr::Adjudicate(
FlightGroup* fg
)
{
AirGrid* ag = AirGrid::instance();
GridAdSiteSet set = ag->getAirDef(fg);
AdMgr* adMgr;
for (GridAdSiteSet::Iterator it(set);
(adMgr = it()) != __null ;) {
}
}