here is the exact error message :
c:\Program Files\SensAble\GHOST\v4.0\external\stl\stl_alloc.h(308):
fatal error C1001: INTERNAL COMPILER ERROR
(compiler file 'msc1.cpp', line 2701)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more
information
13 times when compiling my program.
I am compiling a Phantom server from VRPN soft based on ghost SDK
(Phantom Desktop SDK). Seems an issue with GHOST re-declaring its own
stl headers (map, list, string and much more)
ghost stl headers seem to have been given from SGI, reditributable
without fees so I can provide it to whoever wants it (280ko without
complete ghost lib which is copyrighted). the issue is on stl_alloc.h
in this class,
at union _Obj* _M_free_list_link;
//-----------------------------------------------------------
template <bool threads, int inst>
class __default_alloc_template {
private:
// Really we should use static const int x = N
// instead of enum { x = N }, but few compilers accept the former.
# ifndef __SUNPRO_CC
enum {_ALIGN = 8};
enum {_MAX_BYTES = 128};
enum {_NFREELISTS = 16}; // _MAX_BYTES/_ALIGN
# endif
static size_t
_S_round_up(size_t __bytes)
{ return (((__bytes) + (size_t) _ALIGN-1) & ~((size_t) _ALIGN -
1)); }
__PRIVATE:
union _Obj {
union _Obj* _M_free_list_link;
char _M_client_data[1]; /* The client sees this. */
};
//--------------------------------------------------------------------
This works under VC++ 6 (SP5 and probably before), but STL Re
declaration seems to disturb .net 2003 more than 6.0.
Hendrik Schober said:
sebastien NO Maraux SPAM said:
I am using Ghost Lib 4.0,
which is SDK for Phantom haptic device.
this lib does not compile under .net, seemingly because of a union of
this type :
union A {
union A* aList;
char b[1];
};
It must be something in the code you
don't show. This
union A {
union A* aList;
char b[1];
};
int main()
{
return 0;
}
compiles just fine for me with VC7.1. Try
to reduce the problem to <50LOC that we can
copy'n'paste into our editor.
Generally, I found VC7.1 ICE mostly on "real"
errors, where in other circumstances it would
emit a sensible error message for.
Schobi