c++.wxwindows - New errors in 8.39 with wxCVS head
- W這dzimierz Skiba (72/72) Feb 17 2004 8.39 release introduced some new errors into building of CVS head. Each ...
- Walter (8/79) Feb 17 2004 You can work around the problem by changing it from 'protected' to 'publ...
- W這dzimierz Skiba (5/7) Feb 18 2004 Thanks, new beta compiles fine that code. I can't test resulting exacuta...
8.39 release introduced some new errors into building of CVS head. Each of
them is related to unrolling of WX_DEFINE_USER_EXPORTED_ARRAY_* in
..\..\include\wx/dynarray.h.
I have truncated this problem to as small as possible example and tested it
additionaly with online machine at Comeau. Below is result of my investigation.
With
simple:
dmc dummy.cpp
as well as in full wxWindows-like command line:
dmc -mn -c -odmc_msw\monolib_dummy.obj -o -D__WXMSW__ -I..\..\include
-I..\..\lib\dmc_lib\msw -w- -I..\..\src\tiff -I..\..\src\jpeg
-I..\..\src\png
-I..\..\src\zlib -I..\..\src\regex -I..\..\src\expat\lib -DwxUSE_BASE=1
-Ar
-Ae ..\..\src\msw\dummy.cpp
it gives the same errors:
typedef wxBaseArrayShort::iterator biterator;
^
dummy.cpp(26) : Error: member 'wxBaseArrayShort::iterator' of class
'wxBaseArrayShort' is not accessible
typedef wxBaseArrayShort::const_iterator bconst_iterator;
^
dummy.cpp(27) : Error: member 'wxBaseArrayShort::const_iterator' of class
'wxBaseArrayShort' is not accessible
typedef wxBaseArrayShort::value_type bvalue_type;
^
dummy.cpp(28) : Error: member 'wxBaseArrayShort::value_type' of class
'wxBaseArrayShort' is not accessible
typedef wxBaseArrayShort::const_reference bconst_reference;
^
dummy.cpp(29) : Error: member 'wxBaseArrayShort::const_reference' of class
'wxBaseArrayShort' is not accessible
typedef wxBaseArrayShort::difference_type difference_type;
^
dummy.cpp(38) : Error: member 'wxBaseArrayShort::difference_type' of class
'wxBaseArrayShort' is not accessible
Fatal error: too many errors
And finally minimal dummy.cpp code I got:
typedef short _wxArraywxBaseArrayShort;
class wxBaseArrayShort
{
public:
wxBaseArrayShort();
~wxBaseArrayShort();
protected:
typedef _wxArraywxBaseArrayShort value_type;
typedef value_type* iterator;
typedef const value_type* const_iterator;
typedef value_type& reference;
typedef const value_type& const_reference;
typedef int difference_type;
};
typedef short _wxArraywxArrayShort;
class wxArrayShort : public wxBaseArrayShort
{
public:
wxArrayShort();
~wxArrayShort();
private:
typedef wxBaseArrayShort::iterator biterator;
typedef wxBaseArrayShort::const_iterator bconst_iterator;
typedef wxBaseArrayShort::value_type bvalue_type;
typedef wxBaseArrayShort::const_reference bconst_reference;
public:
typedef _wxArraywxArrayShort value_type;
typedef value_type* pointer;
typedef const value_type* const_pointer;
typedef value_type* iterator;
typedef const value_type* const_iterator;
typedef value_type& reference;
typedef const value_type& const_reference;
typedef wxBaseArrayShort::difference_type difference_type;
};
ABX
Feb 17 2004
You can work around the problem by changing it from 'protected' to 'public'. Meanwhile, I'll see about fixing it. -Walter "W這dzimierz Skiba" <abx abx.art.pl> wrote in message news:c0sjkg$2lfh$1 digitaldaemon.com...8.39 release introduced some new errors into building of CVS head. Each of them is related to unrolling of WX_DEFINE_USER_EXPORTED_ARRAY_* in ..\..\include\wx/dynarray.h. I have truncated this problem to as small as possible example and testeditadditionaly with online machine at Comeau. Below is result of myinvestigation. Withsimple: dmc dummy.cpp as well as in full wxWindows-like command line: dmc -mn -c -odmc_msw\monolib_dummy.obj -o -D__WXMSW__ -I..\..\include -I..\..\lib\dmc_lib\msw -w- -I..\..\src\tiff -I..\..\src\jpeg -I..\..\src\png-I..\..\src\zlib -I..\..\src\regex -I..\..\src\expat\lib -DwxUSE_BASE=1 -Ar-Ae ..\..\src\msw\dummy.cpp it gives the same errors: typedef wxBaseArrayShort::iterator biterator; ^ dummy.cpp(26) : Error: member 'wxBaseArrayShort::iterator' of class 'wxBaseArrayShort' is not accessible typedef wxBaseArrayShort::const_iterator bconst_iterator; ^ dummy.cpp(27) : Error: member 'wxBaseArrayShort::const_iterator' of class 'wxBaseArrayShort' is not accessible typedef wxBaseArrayShort::value_type bvalue_type; ^ dummy.cpp(28) : Error: member 'wxBaseArrayShort::value_type' of class 'wxBaseArrayShort' is not accessible typedef wxBaseArrayShort::const_reference bconst_reference; ^ dummy.cpp(29) : Error: member 'wxBaseArrayShort::const_reference' of class 'wxBaseArrayShort' is not accessible typedef wxBaseArrayShort::difference_type difference_type; ^ dummy.cpp(38) : Error: member 'wxBaseArrayShort::difference_type' of class 'wxBaseArrayShort' is not accessible Fatal error: too many errors And finally minimal dummy.cpp code I got: typedef short _wxArraywxBaseArrayShort; class wxBaseArrayShort { public: wxBaseArrayShort(); ~wxBaseArrayShort(); protected: typedef _wxArraywxBaseArrayShort value_type; typedef value_type* iterator; typedef const value_type* const_iterator; typedef value_type& reference; typedef const value_type& const_reference; typedef int difference_type; }; typedef short _wxArraywxArrayShort; class wxArrayShort : public wxBaseArrayShort { public: wxArrayShort(); ~wxArrayShort(); private: typedef wxBaseArrayShort::iterator biterator; typedef wxBaseArrayShort::const_iterator bconst_iterator; typedef wxBaseArrayShort::value_type bvalue_type; typedef wxBaseArrayShort::const_reference bconst_reference; public: typedef _wxArraywxArrayShort value_type; typedef value_type* pointer; typedef const value_type* const_pointer; typedef value_type* iterator; typedef const value_type* const_iterator; typedef value_type& reference; typedef const value_type& const_reference; typedef wxBaseArrayShort::difference_type difference_type; }; ABX
Feb 17 2004
"Walter" <walter digitalmars.com> wrote in news:c0to3o$1f2g$2 digitaldaemon.com:You can work around the problem by changing it from 'protected' to 'public'. Meanwhile, I'll see about fixing it. -WalterThanks, new beta compiles fine that code. I can't test resulting exacutables because of the problem mentioned in other thread by somebody. ABX
Feb 18 2004








"W這dzimierz Skiba" <abx abx.art.pl>