bugGNU Octave - Bugs: bug #55175, [octave forge] (fem-fenics) fails...

 
 

bug #55175: [octave forge] (fem-fenics) fails to build due to assignment error in function.h

Submitted by:  None
Submitted on:  Thu 06 Dec 2018 10:08:38 PM UTC  
 
Category:  Octave Forge Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Build Failure
Status:  None Assigned to:  None
Originator Name:  Chris Gorman Originator Email:  -email is unavailable-
Open/Closed:  Open Release:  4.4.1
Operating System:  GNU/Linux

Add a New Comment (Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Tue 11 Dec 2018 10:42:02 PM UTC, comment #1: 

making a cast in the assignment allows the build to continue

retval = (octave_value) subsref (type, idx, 1);

Chris Gorman <chrisgorman>
Thu 06 Dec 2018 10:08:38 PM UTC, original submission:  

I have been trying to build fem-fenics from source and get an error from the compiler due to a problem with the function.h header file.  The compiler can't assign a octave_value_list to an octave_value.  The following is the compiler output from the build attempt.

CPPFLAGS="-I. -fpermissive -DDOLFIN_VERSION=\"2017.2.0\" -DDOLFIN_SIZE_T=8 -DDOLFIN_LA_INDEX_SIZE=4 -DHAS_HDF5 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DHAS_SLEPC -DHAS_PETSC -DHAS_PETSC4PY -DHAS_UMFPACK -DHAS_CHOLMOD -DHAS_SCOTCH -DHAS_ZLIB -DHAS_MPI -DDOLFIN_VERSION=2017.2.0 -I/usr/include/scotch -I/usr/include/suitesparse -I/usr/lib/petscdir/3.7.3/x86_64-linux-gnu-real/include -I/usr/lib/slepcdir/3.7.2/x86_64-linux-gnu-real/include -I/usr/lib/openmpi/include/openmpi -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi/opal/mca/event/libevent2021/libevent/include -I/usr/lib/openmpi/include/openmpi/opal/mca/event/libevent2021/libevent -I/usr/lib/python2.7/dist-packages/petsc4py/include -I/usr/include/hdf5/openmpi -I/usr/include/eigen3 -DLATEST_DOLFIN" /usr/local/bin/mkoctfile -c Function.cc -o Function.o
In file included from Function.cc:20:0:
function.h: In member function ‘virtual octave_value function::subsref(const string&, const std::__cxx11::list<octave_value_list>&)’:
function.h:78:12: error: no match for ‘operator=’ (operand types are ‘octave_value’ and ‘octave_value_list’)
     retval = subsref (type, idx, 1);
            ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/ovl.h:36:0,
                 from /usr/local/include/octave-4.4.1/octave/../octave/ov-fcn.h:33,
                 from /usr/local/include/octave-4.4.1/octave/../octave/ov-builtin.h:32,
                 from /usr/local/include/octave-4.4.1/octave/../octave/defun-int.h:30,
                 from /usr/local/include/octave-4.4.1/octave/../octave/defun-dld.h:32,
                 from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:32,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/ov.h:359:17: note: candidate: octave_value& octave_value::operator=(const octave_value&)
   octave_value& operator = (const octave_value& a)
                 ^
/usr/local/include/octave-4.4.1/octave/../octave/ov.h:359:17: note:   no known conversion for argument 1 from ‘octave_value_list’ to ‘const octave_value&’
In file included from Function.cc:20:0:
function.h: In member function ‘octave_value_list function::do_multi_index_op(int, const octave_value_list&)’:
function.h:118:43: warning: ‘octave_value_list feval(const string&, const octave_value_list&, int)’ is deprecated: [4.4]: use 'octave::feval' instead [-Wdeprecated-declarations]
     retval = feval ("feval", args, nargout);
                                           ^
In file included from function.h:25:0,
                 from Function.cc:20:
/usr/local/include/octave-4.4.1/octave/../octave/parse.h:643:1: note: declared here
feval (const std::string& name,
^
Function.cc: In function ‘octave_value_list FFunction(const octave_value_list&, int)’:
Function.cc:74:11: warning: ‘void mlock()’ is deprecated: [4.4]: use 'interpreter::mlock' instead [-Wdeprecated-declarations]
           mlock ();
           ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:42:0,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/variables.h:125:27: note: declared here
extern OCTINTERP_API void mlock (void);
                           ^
Function.cc:74:11: warning: ‘void mlock()’ is deprecated: [4.4]: use 'interpreter::mlock' instead [-Wdeprecated-declarations]
           mlock ();
           ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:42:0,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/variables.h:125:27: note: declared here
extern OCTINTERP_API void mlock (void);
                           ^
Function.cc:74:18: warning: ‘void mlock()’ is deprecated: [4.4]: use 'interpreter::mlock' instead [-Wdeprecated-declarations]
           mlock ();
                  ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:42:0,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/variables.h:125:27: note: declared here
extern OCTINTERP_API void mlock (void);
                           ^
Function.cc:81:11: warning: ‘void mlock()’ is deprecated: [4.4]: use 'interpreter::mlock' instead [-Wdeprecated-declarations]
           mlock ();
           ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:42:0,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/variables.h:125:27: note: declared here
extern OCTINTERP_API void mlock (void);
                           ^
Function.cc:81:11: warning: ‘void mlock()’ is deprecated: [4.4]: use 'interpreter::mlock' instead [-Wdeprecated-declarations]
           mlock ();
           ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:42:0,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/variables.h:125:27: note: declared here
extern OCTINTERP_API void mlock (void);
                           ^
Function.cc:81:18: warning: ‘void mlock()’ is deprecated: [4.4]: use 'interpreter::mlock' instead [-Wdeprecated-declarations]
           mlock ();
                  ^
In file included from /usr/local/include/octave-4.4.1/octave/../octave/oct.h:42:0,
                 from functionspace.h:24,
                 from Function.cc:19:
/usr/local/include/octave-4.4.1/octave/../octave/variables.h:125:27: note: declared here
extern OCTINTERP_API void mlock (void);

Anonymous

 

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

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by chrisgorman (Posted a comment)
  • -email is unavailable- added by None (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

     

     

    Follows 1 latest change.

    Date Changed by Updated Field Previous Value => Replaced by
    2018-12-18 mtmiller Summaryfem-fenics fails to build due to assignement error in function.h => [octave forge] (fem-fenics) fails to build due to assignment error in function.h

    Back to the top


    Powered by Savane 3.5