[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi] Possible wx-2.9.0-RC6 regression
From: |
Greg Chicares |
Subject: |
[lmi] Possible wx-2.9.0-RC6 regression |
Date: |
Mon, 20 Jul 2009 14:51:08 +0000 |
User-agent: |
Thunderbird 2.0.0.21 (Windows/20090302) |
Here's a vector of an incomplete type [see C++03, last
line of 17.4.3.6/2]:
/* clipbrd.h */
24 class WXDLLIMPEXP_FWD_CORE wxDataFormat;
117 wxVector<wxDataFormat> m_formats;
which is a problem [below] with libstdc++ debugging macros.
(I'm using MinGW gcc-3.4.5, BTW). I realize that this won't
link because I haven't built wx itself with those macros
defined, but I think that's a separate matter.
I suppose this should be fixed by adding
#include "wx/dataobj.h"
to 'clipbrd.h', replacing these two lines:
24 class WXDLLIMPEXP_FWD_CORE wxDataFormat;
25 class WXDLLIMPEXP_FWD_CORE wxDataObject;
The compiler error doesn't occur if I include
#include <wx/dataobj.h>
before
#include <wx/clipbrd.h>
in lmi code. Here are the gcc-3.4.5 diagnostics:
/MinGW_/bin/g++ -MMD -MP -MT wx_utility.o -MF wx_utility.d -c -I /lmi/src/lmi
-I /lmi/src/lmi/tools/pete-2.1.1 -I
/opt/lmi/local/lib/wx/include/i686-pc-mingw32-msw-unicode-release-2.9 -I
/opt/lmi/local/include/wx-2.9 -I /opt/lmi/third_party/include -I
/opt/lmi/third_party/src -I /opt/lmi/local/include -I
/opt/lmi/local/include/libxml2 -DLMI_WX_NEW_USE_SO -DLIBXML_USE_DLL -DSTRICT
-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -D_GLIBCXX_CONCEPT_CHECKS
-D_GLIBCPP_DEBUG -D_GLIBCPP_DEBUG_PEDANTIC -D_GLIBCPP_CONCEPT_CHECKS
-D_GLIBXX_DEBUG_PEDANTIC -D_LARGEFILE_SOURCE=unknown
-DWXUSINGDLL -D__WXMSW__ -DBOOST_STRICT_CONFIG -std=gnu++98 -posix
-pedantic-errors -Werror -Wall -Wcast-align -Wconversion
-Wdeprecated-declarations -Wdisabled-optimization -Wimport -Wmultichar
-Wpacked -Wpointer-arith -Wsign-compare -Wundef -Wwrite-strings -Wno-long-long
-Wctor-dtor-privacy -Wdeprecated -Wnon-template-friend -Woverloaded-virtual
-Wpmf-conversions -Wsynth
-Wno-uninitialized -ggdb -O0 /lmi/src/lmi/wx_utility.cpp -owx_utility.o
In file included from /lmi/src/lmi/wx_utility.cpp:38:
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:
In instantiation of `__gnu_cxx::_SGIAssignableConcept<wxDataFormat>':
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/stl_vector.h:144:
instantiated from `__gnu_norm::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/debug/vector:46:
instantiated from `__gnu_debug_def::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
/opt/lmi/local/include/wx-2.9/wx/clipbrd.h:117: instantiated from here
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:216:
error: `__gnu_cxx::_SGIAssignableConcept<_Tp>::__a' has incomplete type
/opt/lmi/local/include/wx-2.9/wx/clipbrd.h:24: error: forward declaration of
`struct wxDataFormat'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:
In member function `void
__gnu_cxx::_SGIAssignableConcept<_Tp>::__constraints() [with _Tp =
wxDataFormat]':
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/stl_vector.h:144:
instantiated from `__gnu_norm::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/debug/vector:46:
instantiated from `__gnu_debug_def::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
/opt/lmi/local/include/wx-2.9/wx/clipbrd.h:117: instantiated from here
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:208:
error: using invalid field `__gnu_cxx::_SGIAssignableConcept<_Tp>::__a'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:209:
error: using invalid field `__gnu_cxx::_SGIAssignableConcept<_Tp>::__a'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:209:
error: using invalid field `__gnu_cxx::_SGIAssignableConcept<_Tp>::__a'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/stl_vector.h:144:
instantiated from `__gnu_norm::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/debug/vector:46:
instantiated from `__gnu_debug_def::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
/opt/lmi/local/include/wx-2.9/wx/clipbrd.h:117: instantiated from here
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:210:
error: using invalid field `__gnu_cxx::_SGIAssignableConcept<_Tp>::__a'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:
In member function `void
__gnu_cxx::_SGIAssignableConcept<_Tp>::__const_constraints(const _Tp&)
[with _Tp = wxDataFormat]':
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:210:
instantiated from `void
__gnu_cxx::_SGIAssignableConcept<_Tp>::__constraints() [with _Tp
= wxDataFormat]'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/stl_vector.h:144:
instantiated from `__gnu_norm::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/debug/vector:46:
instantiated from `__gnu_debug_def::vector<wxDataFormat,
std::allocator<wxDataFormat> >'
/opt/lmi/local/include/wx-2.9/wx/clipbrd.h:117: instantiated from here
C:/MinGW-20090203/bin/../lib/gcc/mingw32/3.4.5/../../../../include/c++/3.4.5/bits/boost_concept_check.h:214:
error: using invalid field `__gnu_cxx::_SGIAssignableConcept<_Tp>::__a'
make[1]: *** [wx_utility.o] Error 1
- [lmi] Possible wx-2.9.0-RC6 regression,
Greg Chicares <=