Observed on a ubuntu 11.04 beta2 that comes with a recent gcc release
julien@batou:/users/software/sire/buildcorelib$ make
[ 1%] Built target SireError
[ 3%] Built target SireStream
[ 3%] Built target libFoo
[ 3%] Built target libBar
[ 4%] Built target test_template_rtti
[ 4%] Built target test_exception_packing
[ 4%] Built target test_qhash_lookup
[ 5%] Built target SireID
[ 10%] Built target SireBase
[ 10%] Built target SireUnits
[ 10%] Built target SireBLASPACK
[ 16%] Built target SireMaths
[ 18%] Built target SireVol
[ 24%] Built target SireCAS
[ 25%] Built target SireDB
[ 25%] Building CXX object src/libs/SireMol/CMakeFiles/SireMol.dir/angleid.cpp.o
In file included from
/users/software/sire/corelib/src/libs/SireMol/atomid.h:36:0,
from /users/software/sire/corelib/src/libs/SireMol/atomidentifier.h:32,
from /users/software/sire/corelib/src/libs/SireMol/angleid.h:32,
from /users/software/sire/corelib/src/libs/SireMol/angleid.cpp:29:
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In instantiation of
‘SireID::Specify<SireMol::AtomID>’:
/users/software/sire/corelib/src/libs/SireMol/atomid.h:186:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:105:29: error:
‘SireID::Specify<ID>::id’ has incomplete type
/users/software/sire/corelib/src/libs/SireMol/atomid.h:62:7: error: forward
declaration of ‘struct SireMol::AtomID::Identifier’
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In copy constructor
‘SireID::Specify<ID>::Specify(const SireID::Specify<ID>&) [with ID =
SireMol::AtomID]’:
/usr/include/qt4/QtCore/qmetatype.h:142:43: instantiated from ‘void*
qMetaTypeConstructHelper(const T*) [with T =
SireID::Specify<SireMol::AtomID>]’
/usr/include/qt4/QtCore/qmetatype.h:196:25: instantiated from ‘int
qRegisterMetaType(const char*, T*) [with T =
SireID::Specify<SireMol::AtomID>]’
/users/software/sire/corelib/src/libs/SireMol/atomid.h:186:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:137:71: error: using
invalid field ‘SireID::Specify<ID>::id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp:137:71: error:
‘const class SireID::Specify<SireMol::AtomID>’ has no member named ‘id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In member function
‘uint SireID::Specify<ID>::hash() const [with ID = SireMol::AtomID, uint =
unsigned int]’:
/users/software/sire/corelib/src/libs/SireMol/angleid.cpp:439:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:283:31: error: using
invalid field ‘SireID::Specify<ID>::id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In member function
‘QString SireID::Specify<ID>::toString() const [with ID = SireMol::AtomID]’:
/users/software/sire/corelib/src/libs/SireMol/angleid.cpp:439:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:185:63: error: using
invalid field ‘SireID::Specify<ID>::id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp:188:56: error: using
invalid field ‘SireID::Specify<ID>::id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In member function
‘bool SireID::Specify<ID>::isNull() const [with ID = SireMol::AtomID]’:
/users/software/sire/corelib/src/libs/SireMol/angleid.cpp:439:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:290:22: error: using
invalid field ‘SireID::Specify<ID>::id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In member function
‘QList<typename ID::Index> SireID::Specify<ID>::map(const typename
ID::SearchObject&) const [with ID = SireMol::AtomID, typename ID::Index =
SireMol::AtomIdx, typename ID::SearchObject = SireMol::MolInfo]’:
/users/software/sire/corelib/src/libs/SireMol/angleid.cpp:439:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:197:48: error: using
invalid field ‘SireID::Specify<ID>::id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp: In member function
‘bool SireID::Specify<ID>::operator==(const SireID::Specify<ID>&) const [with
ID = SireMol::AtomID]’:
/users/software/sire/corelib/src/libs/SireID/id.h:103:55: instantiated from
‘static bool SireID::ID::compare(const T&, const SireID::ID&) [with T =
SireID::Specify<SireMol::AtomID>, SireID::ID = SireID::ID]’
/users/software/sire/corelib/src/libs/SireID/specify.hpp:176:59: instantiated
from ‘bool SireID::Specify<ID>::operator==(const SireID::ID&) const [with ID
= SireMol::AtomID]’
/users/software/sire/corelib/src/libs/SireMol/angleid.cpp:439:1: instantiated
from here
/users/software/sire/corelib/src/libs/SireID/specify.hpp:168:24: error:
‘const class SireID::Specify<SireMol::AtomID>’ has no member named ‘id’
/users/software/sire/corelib/src/libs/SireID/specify.hpp:168:24: error: using
invalid field ‘SireID::Specify<ID>::id’
In file included from /users/software/sire/corelib/src/libs/SireID/name.h:35:0,
from /users/software/sire/corelib/src/libs/SireMol/molname.h:32,
from /users/software/sire/corelib/src/libs/SireMol/moleculeinfodata.h:42,
from /users/software/sire/corelib/src/libs/SireMol/atomproperty.hpp:37,
from /users/software/sire/corelib/src/libs/SireMol/atomcoords.h:32,
from /users/software/sire/corelib/src/libs/SireMol/angleid.cpp:31:
/users/software/sire/corelib/src/libs/SireMaths/constants.h: At global scope:
/users/software/sire/corelib/src/libs/SireMaths/constants.h:88:14: warning:
‘SireMaths::smallest’ defined but not used
/users/software/sire/corelib/src/libs/SireMaths/constants.h:97:14: warning:
‘SireMaths::largest’ defined but not used
make[2]: *** [src/libs/SireMol/CMakeFiles/SireMol.dir/angleid.cpp.o] Error 1
make[1]: *** [src/libs/SireMol/CMakeFiles/SireMol.dir/all] Error 2
make: *** [all] Error 2
julien@batou:/users/software/sire/buildcorelib$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/x86_64-linux-gnu/gcc/x86_64-linux-gnu/4.5.2/lto-wra
pper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro
4.5.2-8ubuntu4' --with-bugurl=file:///usr/share/doc/gcc-4.5/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.5 --enable-shared --enable-multiarch
--with-multiarch-defaults=x86_64-linux-gnu --enable-linker-build-id
--with-system-zlib --libexecdir=/usr/lib/x86_64-linux-gnu
--without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.5 --libdir=/usr/lib/x86_64-linux-gnu
--enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --enable-plugin --enable-gold --enable-ld=default
--with-plugin-ld=ld.gold --enable-objc-gc --disable-werror --with-arch-32=i686
--with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
--host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)
Installing g++-4.4 and
C=/usr/bin/gcc-4.4 CXX=/usr/bin/g++-4.4 cmake /path/to/sire
works
Original issue reported on code.google.com by julienm...@googlemail.com on 19 Apr 2011 at 6:33
Original issue reported on code.google.com by
julienm...@googlemail.com
on 19 Apr 2011 at 6:33