Hello community,
here is the log from the commit of package armadillo for openSUSE:Factory checked in at 2011-11-16 17:16:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/armadillo (Old)
and /work/SRC/openSUSE:Factory/.armadillo.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "armadillo", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/armadillo/armadillo.changes 2011-10-25 15:47:26.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.armadillo.new/armadillo.changes 2011-11-16 17:16:31.000000000 +0100
@@ -1,0 +2,6 @@
+Tue Nov 15 05:30:02 UTC 2011 - badshah400@gmail.com
+
+- Update to version 2.2.5 (bug-fix release; no summary of changes
+ documented upstream)
+
+-------------------------------------------------------------------
Old:
----
armadillo-2.2.4.tar.bz2
New:
----
armadillo-2.2.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ armadillo.spec ++++++
--- /var/tmp/diff_new_pack.uPEZpT/_old 2011-11-16 17:16:33.000000000 +0100
+++ /var/tmp/diff_new_pack.uPEZpT/_new 2011-11-16 17:16:33.000000000 +0100
@@ -18,7 +18,7 @@
Name: armadillo
-Version: 2.2.4
+Version: 2.2.5
Release: 1
License: LGPLv3+
Summary: Fast C++ matrix library with interfaces to LAPACK and ATLAS
++++++ armadillo-2.2.4.tar.bz2 -> armadillo-2.2.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/CMakeLists.txt new/armadillo-2.2.5/CMakeLists.txt
--- old/armadillo-2.2.4/CMakeLists.txt 2011-10-17 09:57:08.000000000 +0200
+++ new/armadillo-2.2.5/CMakeLists.txt 2011-11-14 08:19:49.000000000 +0100
@@ -15,7 +15,7 @@
set(ARMA_MAJOR 2)
set(ARMA_MINOR 2)
-set(ARMA_PATCH 4)
+set(ARMA_PATCH 5)
message(STATUS "Configuring Armadillo ${ARMA_MAJOR}.${ARMA_MINOR}.${ARMA_PATCH}")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/docs/index.html new/armadillo-2.2.5/docs/index.html
--- old/armadillo-2.2.4/docs/index.html 2011-10-17 07:17:45.000000000 +0200
+++ new/armadillo-2.2.5/docs/index.html 2011-11-14 08:19:49.000000000 +0100
@@ -17,7 +17,7 @@
<tbody>
<tr>
<td style="text-align: left; vertical-align: top;">
- <font size=+2><b>Reference for Armadillo 2.2.4</b></font>
+ <font size=+2><b>Reference for Armadillo 2.2.5</b></font>
<br>
<font size=-1><b>(Blue Skies Debauchery)</b></font>
</td>
@@ -452,7 +452,7 @@
<br>
<ul>
Create a fixed size matrix, with the size specified via template arguments,
-and copying data from read-only auxiliary memory.
+and copying data from auxiliary memory.
</ul>
</li>
</ul>
@@ -715,7 +715,7 @@
<br>
<ul>
Create a fixed size column vector, with the size specified via the template argument,
-and copying data from read-only auxiliary memory.
+and copying data from auxiliary memory.
</ul>
</li>
</ul>
@@ -939,7 +939,7 @@
<br>
<ul>
Create a fixed size row vector, with the size specified via the template argument,
-and copying data from read-only auxiliary memory.
+and copying data from auxiliary memory.
</ul>
</li>
</ul>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/include/armadillo_bits/Mat_meat.hpp new/armadillo-2.2.5/include/armadillo_bits/Mat_meat.hpp
--- old/armadillo-2.2.4/include/armadillo_bits/Mat_meat.hpp 2011-07-08 09:42:31.000000000 +0200
+++ new/armadillo-2.2.5/include/armadillo_bits/Mat_meat.hpp 2011-11-14 01:59:19.000000000 +0100
@@ -2700,10 +2700,21 @@
Mat<eT>::operator=(const eOp& X)
{
arma_extra_debug_sigprint();
-
+
arma_type_check< is_same_type< eT, typename T1::elem_type >::value == false >::apply();
- eop_type::apply(*this, X);
+ const bool bad_alias = (X.P.has_subview && X.P.is_alias(*this));
+
+ if(bad_alias == false)
+ {
+ eop_type::apply(*this, X);
+ }
+ else
+ {
+ Mat<eT> tmp(X);
+
+ steal_mem(tmp);
+ }
return *this;
}
@@ -3113,7 +3124,18 @@
arma_type_check< is_same_type< eT, typename T1::elem_type >::value == false >::apply();
arma_type_check< is_same_type< eT, typename T2::elem_type >::value == false >::apply();
- eglue_type::apply(*this, X);
+ const bool bad_alias = ( (X.P1.has_subview && X.P1.is_alias(*this)) || ( X.P2.has_subview && X.P2.is_alias(*this)) );
+
+ if(bad_alias == false)
+ {
+ eglue_type::apply(*this, X);
+ }
+ else
+ {
+ Mat<eT> tmp(X);
+
+ steal_mem(tmp);
+ }
return *this;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/include/armadillo_bits/Proxy.hpp new/armadillo-2.2.5/include/armadillo_bits/Proxy.hpp
--- old/armadillo-2.2.4/include/armadillo_bits/Proxy.hpp 2011-05-30 06:23:57.000000000 +0200
+++ new/armadillo-2.2.5/include/armadillo_bits/Proxy.hpp 2011-11-14 01:59:19.000000000 +0100
@@ -42,6 +42,7 @@
typedef const eT* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Mat<eT>& Q;
@@ -75,6 +76,7 @@
typedef const eT* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Col<eT>& Q;
@@ -108,6 +110,7 @@
typedef const eT* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Row<eT>& Q;
@@ -141,6 +144,7 @@
typedef const elem_type* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Mat Q;
@@ -174,6 +178,7 @@
typedef const elem_type* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Mat Q;
@@ -207,6 +212,7 @@
typedef const subview<eT>& ea_type;
static const bool prefer_at_accessor = true;
+ static const bool has_subview = true;
arma_aligned const subview<eT>& Q;
@@ -240,6 +246,7 @@
typedef const eT* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Mat<eT> Q;
@@ -273,6 +280,7 @@
typedef const diagview<eT>& ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = true;
arma_aligned const diagview<eT>& Q;
@@ -307,6 +315,7 @@
typedef const eOp& ea_type;
static const bool prefer_at_accessor = eOp::prefer_at_accessor;
+ static const bool has_subview = eOp::has_subview;
arma_aligned const eOp& Q;
@@ -340,6 +349,7 @@
typedef const eGlue& ea_type;
static const bool prefer_at_accessor = eGlue::prefer_at_accessor;
+ static const bool has_subview = eGlue::has_subview;
arma_aligned const eGlue& Q;
@@ -373,6 +383,7 @@
typedef const elem_type* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Mat Q;
@@ -406,6 +417,7 @@
typedef const elem_type* ea_type;
static const bool prefer_at_accessor = false;
+ static const bool has_subview = false;
arma_aligned const Mat Q;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/include/armadillo_bits/arma_version.hpp new/armadillo-2.2.5/include/armadillo_bits/arma_version.hpp
--- old/armadillo-2.2.4/include/armadillo_bits/arma_version.hpp 2011-10-17 09:57:08.000000000 +0200
+++ new/armadillo-2.2.5/include/armadillo_bits/arma_version.hpp 2011-11-14 08:19:49.000000000 +0100
@@ -18,7 +18,7 @@
#define ARMA_VERSION_MAJOR 2
#define ARMA_VERSION_MINOR 2
-#define ARMA_VERSION_PATCH 4
+#define ARMA_VERSION_PATCH 5
#define ARMA_VERSION_NAME "Blue Skies Debauchery"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/include/armadillo_bits/eGlue_bones.hpp new/armadillo-2.2.5/include/armadillo_bits/eGlue_bones.hpp
--- old/armadillo-2.2.4/include/armadillo_bits/eGlue_bones.hpp 2011-05-21 19:36:56.000000000 +0200
+++ new/armadillo-2.2.5/include/armadillo_bits/eGlue_bones.hpp 2011-11-14 01:59:19.000000000 +0100
@@ -24,6 +24,7 @@
typedef typename get_pod_type::result pod_type;
static const bool prefer_at_accessor = (Proxy<T1>::prefer_at_accessor || Proxy<T2>::prefer_at_accessor);
+ static const bool has_subview = (Proxy<T1>::has_subview || Proxy<T2>::has_subview );
arma_aligned const Proxy<T1> P1;
arma_aligned const Proxy<T2> P2;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/armadillo-2.2.4/include/armadillo_bits/eOp_bones.hpp new/armadillo-2.2.5/include/armadillo_bits/eOp_bones.hpp
--- old/armadillo-2.2.4/include/armadillo_bits/eOp_bones.hpp 2011-05-21 19:36:56.000000000 +0200
+++ new/armadillo-2.2.5/include/armadillo_bits/eOp_bones.hpp 2011-11-14 01:59:19.000000000 +0100
@@ -26,6 +26,7 @@
typedef Proxy<T1> proxy_type;
static const bool prefer_at_accessor = Proxy<T1>::prefer_at_accessor;
+ static const bool has_subview = Proxy<T1>::has_subview;
arma_aligned const Proxy<T1> P;
arma_aligned const elem_type aux; //!< storage of auxiliary data, user defined format
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org