User forums > General (but related to Code::Blocks)
New wxWidgets releases
Miguel Gimenez:
Ollydbg, you can try changing (in wxsarraystringcheckproperty.cpp) line 28 to this
--- Code: ---WX_DEFINE_ARRAY(bool, wxArrayBool);
--- End code ---
wxSmith plays with offsets and code magic to access the array, this may be a headache.
ollydbg:
--- Quote from: Miguel Gimenez on March 04, 2026, 09:53:21 am ---Ollydbg, you can try changing (in wxsarraystringcheckproperty.cpp) line 28 to this
--- Code: ---WX_DEFINE_ARRAY(bool, wxArrayBool);
--- End code ---
wxSmith plays with offsets and code magic to access the array, this may be a headache.
--- End quote ---
Well, in the wxsarraystringcheckproperty.cpp file, it has:
--- Code: ---#include "wxsarraystringcheckproperty.h"
#include "wxsarraystringcheckeditordlg.h"
#include <globals.h>
// Helper macros for fetching variables
#define VALUE wxsVARIABLE(Object,Offset,wxArrayString)
#define CHECK wxsVARIABLE(Object,CheckOffset,wxArrayBool)
--- End code ---
Which part of the code do I need to change?
EDIT:
Oh, you mean in the header file.
Let me try it.
ollydbg:
I just changed to this:
--- Code: ---#ifndef WXSARRAYSTRINGCHECKPROPERTY_H
#define WXSARRAYSTRINGCHECKPROPERTY_H
#include "../../properties/wxsproperties.h"
WX_DEFINE_ARRAY(bool,wxArrayBool);
--- End code ---
But I see still the same build error.
Miguel Gimenez:
I am sorry for the confussion with the extension.
Can you change (in wxschecklistbox.cpp:72) this
--- Code: --- if ( ArrayChecks[i] )
{
Codef( _T("%ACheck("));
}
Codef( _T("%AAppend(%t)"), ArrayChoices[i].wx_str());
if ( ArrayChecks[i] )
{
Codef(_T(")"));
}
--- End code ---
to this
--- Code: --- const bool Checked = ArrayChecks[i];
if ( Checked )
{
Codef( _T("%ACheck("));
}
Codef( _T("%AAppend(%t)"), ArrayChoices[i].wx_str());
if ( Checked )
{
Codef(_T(")"));
}
--- End code ---
In line 102 there is another if (), it is expected to fail but the error in line 72 should be gone.
ollydbg:
Still the same error:
--- Code: ----------------- Build: wxSmithLib in wxSmith Windows (compiler: GNU GCC Compiler)---------------
[ 0.6%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxssettings.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxssettings.o
[ 1.3%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxsanimationctrl.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxsanimationctrl.o
[ 1.9%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxsbitmapbutton.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxsbitmapbutton.o
[ 2.5%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxsbitmapcombobox.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxsbitmapcombobox.o
[ 3.2%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxsboxsizer.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxsboxsizer.o
[ 3.8%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxsbutton.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxsbutton.o
[ 4.4%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxscalendarctrl.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxscalendarctrl.o
[ 5.1%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxscheckbox.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxscheckbox.o
[ 5.7%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxschecklistbox.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxschecklistbox.o
[ 6.3%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -D_WIN64 -DWXUSINGDLL -DcbDEBUG -DNOPCH -DBUILDING_PLUGIN -DwxUSE_UNICODE -std=gnu++11 -g -std=gnu++11 -IF:\code\wxWidgets-3.3.2\lib\gcc_dll\mswud -IF:\code\wxWidgets-3.3.2\include -I..\..\..\include -I..\..\..\include\tinyxml -I..\..\..\sdk\wxscintilla\include -I..\..\..\include\scripting\include -c F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxschoice.cpp -o ..\..\..\.objs33_64\plugins\contrib\wxSmithLib\wxwidgets\defitems\wxschoice.o
In file included from F:\code\wxWidgets-3.3.2\include/wx/arrstr.h:15,
from F:\code\wxWidgets-3.3.2\include/wx/ctrlsub.h:17,
from F:\code\wxWidgets-3.3.2\include/wx/listbox.h:21,
from F:\code\wxWidgets-3.3.2\include/wx/checklst.h:17,
from F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxschecklistbox.cpp:24:
F:\code\wxWidgets-3.3.2\include/wx/dynarray.h: In instantiation of 'T& wxBaseArray<T, Sorter>::operator[](size_t) [with T = bool; Sorter = wxSortedArray_SortFunction<bool>; size_t = long long unsigned int]':
F:\code\codeblocks-src\codeblocks_sfmirror\src\plugins\contrib\wxSmith\wxwidgets\defitems\wxschecklistbox.cpp:72:51: required from here
72 | const bool Checked = ArrayChecks[i];
| ^
F:\code\wxWidgets-3.3.2\include/wx/dynarray.h:128:36: error: cannot bind non-const lvalue reference of type 'bool&' to an rvalue of type 'bool'
128 | return base_vec::operator[](uiIndex);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
In file included from D:/code/msys2/mingw64/include/c++/14.2.0/vector:67,
from F:\code\wxWidgets-3.3.2\include/wx/strvararg.h:34,
from F:\code\wxWidgets-3.3.2\include/wx/string.h:34,
from F:\code\wxWidgets-3.3.2\include/wx/arrstr.h:14:
D:/code/msys2/mingw64/include/c++/14.2.0/bits/stl_bvector.h:99:5: note: after user-defined conversion: 'std::_Bit_reference::operator bool() const'
99 | operator bool() const _GLIBCXX_NOEXCEPT
| ^~~~~~~~
Process terminated with status 1 (0 minute(s), 38 second(s))
Process terminated with status 0 (0 minute(s), 40 second(s))
1 error(s), 2 warning(s) (0 minute(s), 40 second(s))
--- End code ---
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version