C
ChrisG
Hi,
I am building an executable on a bunch of UNIX platforms. It works on
all the other ones
(HP, Linux, SUN, SGI) but fails to run on Aix with xlc compiler version
5.0. The problem
is that the default constructors of my global objects are not called on
this platform. So
I declared my global object as
SymbolTable globalSymTab ;
and SymbolTable.cpp has
SymbolTable::SymbolTable ()
: m_curId (0),
m_htab (hTabSize),
m_offStr (0),
m_type (0) {
}
while SymbolTable.hpp has
class SymbolTable {
public:
SymbolTable ();
...
}
But the constructor SymbolTable::SymbolTable () is never called. Could
anyone give
me some suggestions on this problem?
Thanks in advance,
Chris
I am building an executable on a bunch of UNIX platforms. It works on
all the other ones
(HP, Linux, SUN, SGI) but fails to run on Aix with xlc compiler version
5.0. The problem
is that the default constructors of my global objects are not called on
this platform. So
I declared my global object as
SymbolTable globalSymTab ;
and SymbolTable.cpp has
SymbolTable::SymbolTable ()
: m_curId (0),
m_htab (hTabSize),
m_offStr (0),
m_type (0) {
}
while SymbolTable.hpp has
class SymbolTable {
public:
SymbolTable ();
...
}
But the constructor SymbolTable::SymbolTable () is never called. Could
anyone give
me some suggestions on this problem?
Thanks in advance,
Chris