Re: Bugs blocking the 6.1 release
"John W. Eaton" <[email protected]>
| Newsgroups | gmane.comp.gnu.octave.maintainers |
|---|---|
| Message-ID | <[email protected]> |
On 5/16/20 4:58 AM, "Markus Mützel" wrote:
> Am 14. Mai 2020 um 22:22 Uhr schrieb "John W. Eaton":
>> On 5/14/20 3:30 PM, "Markus Mützel" wrote:
>>> Am 14. Mai 2020 um 21:24 Uhr schrieb "Markus Mützel":
>>>> I'll try and cross-compile for Windows next. I'll report if I should run into any issues or better if it fixes the performance issue.
>>>
>>> Well, I didn't reach very far. When I tried to build the .lz source ball for hg id 64b7dedbc220 with "make all dist-lzip", I got the following error:
>>> make[1]: *** No rule to make target 'scripts/legacy/@inline/module.mk', needed by 'distdir-am'. Stop.
>>> make[1]: Leaving directory '/home/osboxes/Documents/Repositories/Octave/octave-jwe/.build'
>>> make: *** [Makefile:27530: distdir] Error 2
>>>
>>> Markus
>>>
>>
>> Can you try again? Strip the following changeset from your repo, pull
>> again from https://hg.octave.org/octave-jwe and you should be able to
>> execute make dist and build from the resulting tar file.
>>
>> summary: convert obsolete octave_fcn_inline object to @inline class
>
> Thanks for the quick fix. I could successfully create the tarball with that change (hg id 178d101fd37d).
>
> Cross-building the stable-octave target with MXE Octave fails with the following error:
>
> /home/osboxes/Documents/Repositories/Octave/mxe-octave-stable/tmp-stable-octave/octave-6.0.1/libinterp/octave-value/ov-fcn-handle.cc: In constructor 'octave::simple_fcn_handle::simple_fcn_handle(const octave_value&, const string&)':
> /home/osboxes/Documents/Repositories/Octave/mxe-octave-stable/tmp-stable-octave/octave-6.0.1/libinterp/octave-value/ov-fcn-handle.cc:181:28: warning: declaration of 'octave_function* fcn' shadows a parameter [-Wshadow]
> 181 | octave_function *fcn = m_fcn.function_value ();
> | ^~~
[...]
I'll check out the warnings. What version of GCC are you using that
produces these warnings? I don't recall seeing them with GCC 8.
> /home/osboxes/Documents/Repositories/Octave/mxe-octave-stable/tmp-stable-octave/octave-6.0.1/libinterp/octave-value/ov-fcn-handle.cc: In member function 'virtual bool octave_fcn_handle::load_hdf5(octave_hdf5_id, const char*)':
> /home/osboxes/Documents/Repositories/Octave/mxe-octave-stable/tmp-stable-octave/octave-6.0.1/libinterp/octave-value/ov-fcn-handle.cc:2640:27: error: cannot bind non-const lvalue reference of type 'octave_hdf5_id&' {aka 'long long int&'} to an rvalue of type 'octave_hdf5_id' {aka 'long long int'}
> 2640 | if (afh->load_hdf5 (group_hid, space_hid, type_hid))
> | ^~~~~~~~~
> /home/osboxes/Documents/Repositories/Octave/mxe-octave-stable/tmp-stable-octave/octave-6.0.1/libinterp/octave-value/ov-fcn-handle.cc:2022:57: note: initializing argument 1 of 'bool octave::anonymous_fcn_handle::load_hdf5(octave_hdf5_id&, octave_hdf5_id&, octave_hdf5_id&)'
> 2022 | bool anonymous_fcn_handle::load_hdf5 (octave_hdf5_id& group_hid,
> | ~~~~~~~~~~~~~~~~^~~~~~~~~
> make[5]: *** [Makefile:20696: libinterp/octave-value/liboctave_value_la-ov-fcn-handle.lo] Error 1
>
>
> Some of those are warnings that I also see for native builds on Ubuntu Linux. But the error about the non-const lvalue seems to be Windows specific. I'm not sure why gcc doesn't mind on Linux though (maybe some standard extension?).
Yeah, strange. I'll try a Windows build and see if I can understand why
that's failing.
jwe