bugGNU Octave - Bugs: bug #48335, sparsersb package fails to compile...

 
 

bug #48335: sparsersb package fails to compile in dev octave

Submitter:  John Donoghue <lostbard>
Submitted:  Tue 28 Jun 2016 08:22:35 PM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Build Failure
Status:  Fixed Assigned to:  None
Originator Name:  JohnD Open/Closed:  * Closed
Release:  * dev Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Wed 10 Aug 2016 04:49:35 PM UTC, comment #13: 

Code in the repo will now compile ok

John Donoghue <lostbard>
Group Member
Wed 10 Aug 2016 04:32:10 PM UTC, comment #12: 

Can this bug be closed now?

Rik <rik5>
Group administrator
Mon 08 Aug 2016 04:08:05 PM UTC, comment #11: 

that compiled!

John Donoghue <lostbard>
Group Member
Mon 08 Aug 2016 02:23:05 PM UTC, comment #10: 

Could you try the latest commit (169:5bc7c3c17355, Mon Aug 08 16:20:54 2016 +0200) ?

dezperado <dezperado>
Mon 08 Aug 2016 01:58:49 PM UTC, comment #9: 

With your patch applied patch I get the following:



sparsersb.cc: In function 'octave_base_value* default_numeric_conversion_function(const octave_base_value&)':
sparsersb.cc:1277:23: error: expected primary-expression before 'const'
  RSBOI_CAST_CONV_ARG (const octave_sparsersb_mtx&);
                       ^
sparsersb.cc:1277:50: error: 'CAST_CONV_ARG' was not declared in this scope
  RSBOI_CAST_CONV_ARG (const octave_sparsersb_mtx&);
                                                  ^
sparsersb.cc:1280:5: error: 'v' was not declared in this scope
  if(v.is_real_type())
     ^
sparsersb.cc: In function 'octave_base_value* oct_conv_octave_triangular_conv(const octave_base_value&)':
sparsersb.cc:1295:23: error: expected primary-expression before 'const'
  RSBOI_CAST_CONV_ARG (const octave_sparsersb_mtx&);
                       ^
sparsersb.cc:1295:50: error: 'CAST_CONV_ARG' was not declared in this scope
  RSBOI_CAST_CONV_ARG (const octave_sparsersb_mtx&);
                                                  ^
sparsersb.cc:1296:35: error: 'v' was not declared in this scope
  return new octave_sparse_matrix (v.matrix_value ());
                                   ^
sparsersb.cc: In function 'octave_value oct_unop_uplus(const octave_base_value&)':
sparsersb.cc:1313:23: error: expected primary-expression before 'const'
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                       ^
sparsersb.cc:1313:50: error: 'CAST_UNOP_ARG' was not declared in this scope
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                                                  ^
sparsersb.cc:1314:35: error: 'v' was not declared in this scope
  return new octave_sparsersb_mtx (v);
sparsersb.cc: In function 'octave_value oct_unop_uminus(const octave_base_value&)':
sparsersb.cc:1351:23: error: expected primary-expression before 'const'
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                       ^
sparsersb.cc:1351:50: error: 'CAST_UNOP_ARG' was not declared in this scope
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                                                  ^
sparsersb.cc:1352:9: error: 'v' was not declared in this scope
  return v.cp_ubop(RSB_ELOPF_NEG);
         ^
sparsersb.cc: In function 'octave_value oct_unop_transpose(const octave_base_value&)':
sparsersb.cc:1358:23: error: expected primary-expression before 'const'
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                       ^
sparsersb.cc:1358:50: error: 'CAST_UNOP_ARG' was not declared in this scope
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                                                  ^
sparsersb.cc:1359:9: error: 'v' was not declared in this scope
  return v.rsboi_get_scaled_copy(rsboi_pone[0],RSB_TRANSPOSITION_T);
         ^
sparsersb.cc: In function 'octave_value oct_unop_htranspose(const octave_base_value&)':
sparsersb.cc:1365:23: error: expected primary-expression before 'const'
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                       ^
sparsersb.cc:1365:50: error: 'CAST_UNOP_ARG' was not declared in this scope
  RSBOI_CAST_UNOP_ARG (const octave_sparsersb_mtx&);
                                                  ^
sparsersb.cc:1366:9: error: 'v' was not declared in this scope
  return v.rsboi_get_scaled_copy(rsboi_pone[0],RSB_TRANSPOSITION_C);
         ^
sparsersb.cc: In function 'octave_value oct_binop_ldiv(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1475:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
                       ^
sparsersb.cc:1475:52: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
                                                    ^
sparsersb.cc:1475:72: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
                                                                        ^
sparsersb.cc:1477:5: error: 'v1' was not declared in this scope
  if(v1.is__triangular())
     ^
sparsersb.cc:1478:24: error: 'v2' was not declared in this scope
   return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_N);

sparsersb.cc:1480:5: error: 'v1' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
     ^
sparsersb.cc:1480:29: error: 'v2' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
                             ^
sparsersb.cc: In function 'octave_value oct_binop_trans_ldiv(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1490:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
                       ^
sparsersb.cc:1490:52: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
                                                    ^
sparsersb.cc:1490:72: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_matrix&);
                                                                        ^
sparsersb.cc:1492:5: error: 'v1' was not declared in this scope
  if(v1.is__triangular())
     ^
sparsersb.cc:1493:24: error: 'v2' was not declared in this scope
   return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_T);
                        ^
sparsersb.cc:1495:5: error: 'v1' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
     ^
sparsersb.cc:1495:29: error: 'v2' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
                             ^
sparsersb.cc: In function 'octave_value oct_binop_c_ldiv(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1506:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
                       ^
sparsersb.cc:1506:52: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
                                                    ^
sparsersb.cc:1506:80: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
                                                                                ^
sparsersb.cc:1508:5: error: 'v1' was not declared in this scope
  if(v1.is__triangular())
     ^
sparsersb.cc:1509:24: error: 'v2' was not declared in this scope
   return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_N);
                        ^
sparsersb.cc:1511:5: error: 'v1' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
     ^
sparsersb.cc:1511:29: error: 'v2' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
                             ^
sparsersb.cc: In function 'octave_value oct_binop_trans_c_ldiv(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1521:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
                       ^
sparsersb.cc:1521:52: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
                                                    ^
sparsersb.cc:1521:80: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx&, const octave_complex_matrix&);
                                                                                ^
sparsersb.cc:1522:5: error: 'v1' was not declared in this scope
  if(v1.is__triangular())
     ^
sparsersb.cc:1523:24: error: 'v2' was not declared in this scope
   return rsboi_spsm(v1,v2,RSB_TRANSPOSITION_T);
                        ^
sparsersb.cc:1525:5: error: 'v1' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
     ^
sparsersb.cc:1525:29: error: 'v2' was not declared in this scope
  if(v1.is_complex_type() || v2.is_complex_type())
                             ^
sparsersb.cc: In function 'octave_value oct_binop_rsb_c_div(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1560:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
                       ^
sparsersb.cc:1560:53: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
                                                     ^
sparsersb.cc:1560:74: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
                                                                          ^
sparsersb.cc:1562:9: error: 'v1' was not declared in this scope
  return v1.rsboi_get_scaled_copy_inv(v2.complex_value());
         ^
sparsersb.cc:1562:38: error: 'v2' was not declared in this scope
  return v1.rsboi_get_scaled_copy_inv(v2.complex_value());
                                      ^
sparsersb.cc: In function 'octave_value oct_binop_rsb_s_div(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1568:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
                       ^
sparsersb.cc:1568:53: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
                                                     ^
sparsersb.cc:1568:73: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
                                                                         ^
sparsersb.cc:1570:9: error: 'v1' was not declared in this scope
  return v1.rsboi_get_scaled_copy_inv(v2.scalar_value());
         ^
sparsersb.cc:1570:38: error: 'v2' was not declared in this scope
  return v1.rsboi_get_scaled_copy_inv(v2.scalar_value());
                                      ^
sparsersb.cc: In function 'octave_value oct_binop_rsb_s_mul(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1575:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
                       ^
sparsersb.cc:1575:53: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
                                                     ^
sparsersb.cc:1575:73: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_scalar&);
                                                                         ^
sparsersb.cc:1577:9: error: 'v1' was not declared in this scope
  return v1.rsboi_get_scaled_copy(v2.scalar_value());
         ^
sparsersb.cc:1577:34: error: 'v2' was not declared in this scope
  return v1.rsboi_get_scaled_copy(v2.scalar_value());
                                  ^
sparsersb.cc: In function 'octave_value oct_binop_rsb_c_mul(const octave_base_value&, const octave_base_value&)':
sparsersb.cc:1583:23: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
                       ^
sparsersb.cc:1583:53: error: expected primary-expression before 'const'
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
                                                     ^
sparsersb.cc:1583:74: error: 'CAST_BINOP_ARGS' was not declared in this scope
  RSB_CAST_BINOP_ARGS (const octave_sparsersb_mtx &, const octave_complex&);
                                                                          ^
sparsersb.cc:1585:9: error: 'v1' was not declared in this scope
  return v1.rsboi_get_scaled_copy(v2.complex_value());
         ^
sparsersb.cc:1585:34: error: 'v2' was not declared in this scope
  return v1.rsboi_get_scaled_copy(v2.complex_value());
.
.
.
.





John Donoghue <lostbard>
Group Member
Mon 08 Aug 2016 10:17:07 AM UTC, comment #8: 

I will take a look.

Its for the 4.1.0+ development version of Octave, that they do not exist.

John Donoghue <lostbard>
Group Member
Mon 08 Aug 2016 09:58:44 AM UTC, comment #7: 

Hi; thanks John and Carnë I've updated the sparsersb-1.0.1 repo
 https://sourceforge.net/p/octave/sparsersb/ci/default/tree/
at changeset [fdc35a]
by redefining wrappers for the three macros
  RSBOI_CAST_CONV_ARG  CAST_UNOP_ARG RSB_CAST_BINOP_ARGS
which I understand are not anymore existing in 4.0.1, right ?
The changeset: https://sourceforge.net/p/octave/sparsersb/ci/fdc35a2da5045707d253a36a9548331097e89b48/

Is this fine now ?
m.m.

dezperado <dezperado>
Mon 08 Aug 2016 01:45:58 AM UTC, comment #6: 

adding maintainer of package to CC

Carnë Draug <carandraug>
Group Member
Sun 07 Aug 2016 11:44:29 PM UTC, comment #5: 

sparser 1.0.1 also doesn't compile with current devs.

Patch attached witch compiles ok - needs to be clean up to be applied to the repo.



(file #38143)

John Donoghue <lostbard>
Group Member
Thu 30 Jun 2016 01:57:29 PM UTC, comment #4: 

Using updated dev, other issues arise:


g++ -std=gnu++11 -c  -fPIC -I/usr/local/include/octave-4.1.0+/octave/.. -I/usr/local/include/octave-4.1.0+/octave -I/usr/local/include  -pthread -fopenmp -g -O2 -fPIC   -I/usr/local/include/  -DHAVE_OCTAVE_41 -DRSB_SPARSERSB_LABEL=sparsersb sparsersb.cc -o sparsersb.o
In file included from sparsersb.cc:77:0:
/usr/local/include/octave-4.1.0+/octave/../octave/oct-alloc.h:28:2: warning: #warning "the octave_allocator class has been deprecated and will be removed in a future release of Octave" [-Wcpp]
 #warning "the octave_allocator class has been deprecated and will be removed in a future release of Octave"
  ^
sparsersb.cc:1242:3: error: expected unqualified-id before numeric constant
   DECLARE_OCTAVE_ALLOCATOR
   ^
sparsersb.cc: In function ?octave_base_value* default_numeric_conversion_function(const octave_base_value&)?:
sparsersb.cc:1259:17: error: expected primary-expression before ?const?
  CAST_CONV_ARG (const octave_sparsersb_mtx&);
                 ^
sparsersb.cc:1259:44: error: ?CAST_CONV_ARG? was not declared in this scope
  CAST_CONV_ARG (const octave_sparsersb_mtx&);
                                            ^
sparsersb.cc:1262:5: error: ?v? was not declared in this scope
  if(v.is_real_type())
     ^
sparsersb.cc: In function ?octave_base_value* oct_conv_octave_triangular_conv(const octave_base_value&)?:
sparsersb.cc:1277:17: error: expected primary-expression before ?const?
  CAST_CONV_ARG (const octave_sparsersb_mtx &);
.
.
.


John Donoghue <lostbard>
Group Member
Wed 29 Jun 2016 08:41:50 PM UTC, comment #3: 

Right, I understand that it is.

I checked in the following changeset:

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

John W. Eaton <jwe>
Group administrator
Wed 29 Jun 2016 07:06:26 PM UTC, comment #2: 

sparsersb is using operator macros

John Donoghue <lostbard>
Group Member
Tue 28 Jun 2016 11:46:37 PM UTC, comment #1: 

I suppose we could continue to install ops.h since it doesn't require Octave's config.h file.  All it does is define macros that aid in defining and installing operator functions for the interpreter.

John W. Eaton <jwe>
Group administrator
Tue 28 Jun 2016 08:22:35 PM UTC, original submission:  

When attempting to compile in mxe-octave, using the current 4.1.0+ dev octave.


i686-w64-mingw32-g++ -std=gnu++11 -c -I/home/johnd/mxe-octave/w32-410/usr/i686-w64-mingw32/include  -I/home/johnd/mxe-octave/w32-410/usr/i686-w64-mingw32/include/octave-4.1.0+/octave/.. -I/home/johnd/mxe-octave/w32-410/usr/i686-w64-mingw32/include/octave-4.1.0+/octave -I/home/johnd/mxe-octave/w32-410/usr/i686-w64-mingw32/include  -pthread -mieee-fp -g -O2   -fopenmp  -I/home/johnd/mxe-octave/w32-410/usr/i686-w64-mingw32/include/  -DHAVE_OCTAVE_41 -DRSB_SPARSERSB_LABEL=sparsersb sparsersb.cc -o sparsersb.o
sparsersb.cc:75:24: fatal error: octave/ops.h: No such file or directory
 #include <octave/ops.h>
                        ^
compilation terminated.



John Donoghue <lostbard>
Group Member

 

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

Attach Files:
   
   
Comment:
   

Attached Files
file #38143:  of-sparsersb-1-fixes.patch added by lostbard (15KiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by rik5 (Posted a comment)
  • -email is unavailable- added by dezperado (Posted a comment)
  • -email is unavailable- added by carandraug (maintainer of sparsersb)
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by lostbard (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 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2016-08-10 rik5 StatusPatch Submitted Fixed
        Open/ClosedOpen Closed
    2016-08-08 carandraug Carbon-Copy- Added -email is unavailable-
    2016-08-07 lostbard StatusNone Patch Submitted
    2016-08-07 lostbard Attached File- Added of-sparsersb-1-fixes.patch, #38143

    Back to the top

    Powered by Savane 3.13-d3ae.
    Corresponding source code