bugGNU Octave - Bugs: bug #53872, type of 'xilaenv_' does not match...

 
 

bug #53872: type of 'xilaenv_' does not match original declaration

Submitter:  Dmitri A. Sergatskov <dasergatskov>
Submitted:  Thu 10 May 2018 01:55:42 PM UTC
   
 
Category:  Configuration and Build System Severity:  3 - Normal
Priority:  5 - Normal Item Group:  None
Status:  Fixed Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * dev Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Fri 11 May 2018 03:31:55 PM UTC, comment #9: 

I pushed the following changeset for the -Walloc-size-larger-than= warning:

http://hg.savannah.gnu.org/hgweb/octave/rev/2dad85fe6b8b

John W. Eaton <jwe>
Group administrator
Fri 11 May 2018 01:18:22 AM UTC, comment #8: 

Oh, and after actually reading the manual description of the -Walloc-size-larger-than= option, I see the problem with the new expression.  NEED is signed and not checked to ensure that it is always greater than 0, so could be -1, which when cast to size_t would be greater than SIZE_MAX / 2.  I'm surprised this is the only warning we see about that kind of issue in Octave.

John W. Eaton <jwe>
Group administrator
Thu 10 May 2018 08:21:34 PM UTC, comment #7: 

I pushed the following changeset on stable:

http://hg.savannah.gnu.org/hgweb/octave/rev/bbc47fb89973

Closing this report as fixed.

John W. Eaton <jwe>
Group administrator
Thu 10 May 2018 07:58:29 PM UTC, comment #6: 

The other warning is gone. So we could close this bug and open another one?

Dmitri.
--

Dmitri A. Sergatskov <dasergatskov>
Thu 10 May 2018 07:52:58 PM UTC, comment #5: 

I saw that message about getmemi in your earlier log but I couldn't figure out where or how that situation could happen.

John W. Eaton <jwe>
Group administrator
Thu 10 May 2018 07:22:26 PM UTC, comment #4: 

Now i see this:


../liboctave/util/oct-sort.cc: In member function 'getmemi':
../liboctave/util/oct-sort.cc:567:7: warning: argument 1 value '18446744073709551615' exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
   a = new T [need];
       ^
/usr/include/c++/8/new:122:7: note: in a call to allocation function 'operator new []' declared here
 void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
       ^


Dmitri.
--

Dmitri A. Sergatskov <dasergatskov>
Thu 10 May 2018 05:57:39 PM UTC, comment #3: 

Except that the test should be _GNUC_ < 8, not 7.

John W. Eaton <jwe>
Group administrator
Thu 10 May 2018 05:56:59 PM UTC, comment #2: 

Does the attached patch work for you?



(file #44136)

John W. Eaton <jwe>
Group administrator
Thu 10 May 2018 05:25:41 PM UTC, comment #1: 

Ugh, GCC 8 has changed the Fortran calling ABI:

>  Character variables longer than HUGE(0) elements are now possible on 64-bit targets. Note that this changes the procedure call ABI for all procedures with character arguments on 64-bit targets, as the type of the hidden character length argument has changed. The hidden character length argument is now of type INTEGER(C_SIZE_T).


(from https://gcc.gnu.org/gcc-8/changes.html)

So we need to make F77_CHAR_ARG_LEN_TYPE conditional on the version of GCC now.

Mike Miller <mtmiller>
Group Member
Thu 10 May 2018 01:55:42 PM UTC, original submission:  

I see in gcc-lto-fedora buildbot:
http://buildbot.octave.org:8011/#/builders/25/builds/1/steps/5/logs/stdio

(around line 8200)


libtool: link: gcc-ranlib libinterp/corefcn/.libs/libcorefcn.a
libtool: link: ( cd "libinterp/corefcn/.libs" && rm -f "libcorefcn.la" && ln -s "../libcorefcn.la" "libcorefcn.la" )
/bin/sh ./libtool  --tag=CXX   --mode=link g++ -fPIC -pthread -fopenmp -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -O2 -flto=4 -ffat-lto-objects  -flto=4 -o src/octave-config  src/src_octave_config-octave-config.o libinterp/corefcn/libcorefcn.la libgnu/libgnu.la -lutil -lm   -lutil -lm
libtool: link: g++ -fPIC -pthread -fopenmp -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -O2 -flto=4 -ffat-lto-objects -flto=4 -o src/octave-config src/src_octave_config-octave-config.o  libinterp/corefcn/.libs/libcorefcn.a libgnu/.libs/libgnu.a -lutil -lm -fopenmp -pthread
mv -f libinterp/.deps/libinterp_liboctinterp_la-build-env-features.Tpo libinterp/.deps/libinterp_liboctinterp_la-build-env-features.Plo
libtool: link: gcc-ar cr liboctave/operators/.libs/liboperators.a liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cdm-dm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-dm-cdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cs-dm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cs-m.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cs-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cdm-cm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cdm-m.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cdm-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cm-cdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cm-dm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cm-m.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cnda-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cm-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cnda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-dm-cs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-dm-cm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-m-cs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-cs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-m-cdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-m-cm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-cnda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-cdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-cm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-cnda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-dm-m.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-m-dm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcdm-fdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fdm-fcdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcs-fdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcs-fm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcs-fnda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcdm-fcm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcdm-fm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcdm-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcm-fcdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcm-fdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcm-fm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcnda-fnda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcm-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcnda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fdm-fcs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fdm-fcm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fm-fcs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fnda-fcs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fm-fcdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fm-fcm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fnda-fcnda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-fcdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-fcm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-fcnda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fdm-fm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fm-fdm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-pm-m.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-m-pm.o liboctave/operators/.libs/
liboctave_operators_liboperators_la-mx-pm-cm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-cm-pm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-pm-fm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fm-pm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-pm-fcm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fcm-pm.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-i8nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i8nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-ui8nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui8nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-i16nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i16nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-ui16nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui16nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-i32nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i32nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-ui32nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui32nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-i64nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i64nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-s-ui64nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui64nda-s.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-i8nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i8nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-ui8nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui8nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-i16nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i16nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-ui16nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui16nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-i32nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i32nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-ui32nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui32nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-i64nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i64nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-fs-ui64nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui64nda-fs.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-i8.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i8-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-ui8.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui8-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-i16.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i16-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-ui16.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui16-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-i32.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i32-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-ui32.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui32-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-i64.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-i64-nda.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-nda-ui64.o liboctave/operators/.libs/liboctave_operators_liboperators_la-mx-ui64-nda.o liboctave/operators/.l
../src/liboctave/numeric/lo-lapack-proto.h:1206:3: warning: type of 'xilaenv_' does not match original declaration [-Wlto-type-mismatch]
   F77_FUNC (xilaenv, XILAENV) (const F77_INT&,
   ^
../src/liboctave/external/lapack-xtra/xilaenv.f:1:2: note: type mismatch in parameter 9
       subroutine xilaenv (ispec, name, opts, n1, n2, n3, n4, retval)
  ^
../src/liboctave/external/lapack-xtra/xilaenv.f:1:2: note: type 'long int' should match type 'int'
../src/liboctave/external/lapack-xtra/xilaenv.f:1:2: note: 'xilaenv' was previously declared here
../src/liboctave/external/lapack-xtra/xilaenv.f:1:2: note: code may be misoptimized unless -fno-strict-aliasing is used
../src/liboctave/util/oct-sort.cc: In member function 'getmemi':
../src/liboctave/util/oct-sort.cc:567:7: warning: argument 1 value '18446744073709551615' exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
   a = new T [need];
       ^
/usr/include/c++/8/new:122:7: note: in a call to allocation function 'operator new []' declared here
 void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)

      
Dmitri.
--

Dmitri A. Sergatskov <dasergatskov>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #44136:  char-arg-len-diff.txt added by jwe (657B - text/plain)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Updated the item)
  • -email is unavailable- added by mtmiller (Posted a comment)
  • -email is unavailable- added by dasergatskov (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2018-05-10 jwe StatusNone Fixed
        Open/ClosedOpen Closed
    2018-05-10 jwe Attached File- Added char-arg-len-diff.txt, #44136

    Back to the top

    Powered by Savane 3.13-758e.
    Corresponding source code