Build error in Fesa class when using String Array in Setting Register
In the *.silecsdesign
use:
<Setting-Register name="WO_string" generateFesaValueItem="true" fesaFieldName="WO_string_fesa">
<stringArray dim="10" string-length="64" format="string"/>
</Setting-Register>
The Fesa build will show the following error:
/GeneratedCode/GenRTActions.cpp
src/MySilecsTestClass/Common/MySilecsTestClass.cpp: In member function ‘virtual void MySilecsTestClass::MyWOBlock_Type::setOneDevice(MySilecsTestClass::Device*, bool, fesa::MultiplexingContext*)’:
src/MySilecsTestClass/Common/MySilecsTestClass.cpp:824:68: error: invalid conversion from ‘const char* const*’ to ‘const char**’ [-fpermissive]
824 | const char** cStringArray = pDevice->WO_string_fesa.get(fesaDim1, pContext);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
| |
| const char* const*
src/MySilecsTestClass/Common/MySilecsTestClass.cpp: In member function ‘void MySilecsTestClass::MyWOBlock_Type::setOneDevice(MySilecsTestClass::Device*, const MySilecsTestClass::MyWOBlockPropPropertyData&, bool, fesa::MultiplexingContext*)’:
src/MySilecsTestClass/Common/MySilecsTestClass.cpp:977:75: error: invalid conversion from ‘const char* const*’ to ‘const char**’ [-fpermissive]
977 | const char** cStringArray = (data.isWO_string_fesaAvailable() ? data.WO_string_fesa.get(fesaDim1) : pDevice->WO_string_fesa.get(fesaDim1, pContext));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const char* const*
make: *** [/opt/cern/buildsystem/generic/2.13.2/Make.generic:143: bin/obj-src/MySilecsTestClass/Common/MySilecsTestClass.x86_64.o] Error 1
make: *** Waiting for unfinished jobs....