octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #43345] lssa fails to build using clang-3.4 an


From: Jordi Gutiérrez Hermoso
Subject: [Octave-bug-tracker] [bug #43345] lssa fails to build using clang-3.4 and later
Date: Thu, 02 Oct 2014 13:32:35 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:32.0) Gecko/20100101 Firefox/32.0 Iceweasel/32.0.3

Update of bug #43345 (project octave):

                  Status:               Confirmed => Patch Submitted        

    _______________________________________________________

Follow-up Comment #4:

Can you please test the following patch?


diff --git a/src/fastlscomplex.cc b/src/fastlscomplex.cc
--- a/src/fastlscomplex.cc
+++ b/src/fastlscomplex.cc
@@ -372,8 +372,7 @@ bool flscomplex (const RowVector & tvec,
 
                             --tpra;
                             h = *tpra * *exp_ptr;
-                            record_current->power_series[p].real() -=
h.imag();
-                            record_current->power_series[p].imag() +=
h.real();
+                record_current->power_series[p] += conj(h);
 
                             if (++exp_ptr >= exp_pse_ptr )
diff --git a/src/fastlscomplex.cc b/src/fastlscomplex.cc
--- a/src/fastlscomplex.cc
+++ b/src/fastlscomplex.cc
@@ -372,8 +372,7 @@ bool flscomplex (const RowVector & tvec,
 
                             --tpra;
                             h = *tpra * *exp_ptr;
-                            record_current->power_series[p].real() -=
h.imag();
-                            record_current->power_series[p].imag() +=
h.real();
+                record_current->power_series[p] += conj(h);
 
                             if (++exp_ptr >= exp_pse_ptr )
diff --git a/src/fastlscomplex.cc b/src/fastlscomplex.cc
--- a/src/fastlscomplex.cc
+++ b/src/fastlscomplex.cc
@@ -372,8 +372,7 @@ bool flscomplex (const RowVector & tvec,
 
                             --tpra;
                             h = *tpra * *exp_ptr;
-                            record_current->power_series[p].real() -=
h.imag();
-                            record_current->power_series[p].imag() +=
h.real();
+                record_current->power_series[p] += conj(h);
 
                             if (++exp_ptr >= exp_pse_ptr )
                               break;
@@ -386,8 +385,7 @@ bool flscomplex (const RowVector & tvec,
 
                             --tpra;
                             h = -*tpra * *exp_ptr;
-                            record_current->power_series[p].real() -=
h.imag();
-                            record_current->power_series[p].imag() +=
h.real();
+                record_current->power_series[p] += conj(h);
 
                             if (++exp_ptr >= exp_pse_ptr)
                               break;
@@ -422,8 +420,7 @@ bool flscomplex (const RowVector & tvec,
 
                                   tprb -= 2;
                                   h = *tprb * *exp_ptr;
-                                  record_current->power_series[p].real() -=
h.imag();
-                                  record_current->power_series[p].imag() +=
h.real();
+                  record_current->power_series[p] += conj(h);
 
                                   if ( ++exp_ptr >= exp_pse_ptr )
                                     break;
@@ -436,8 +433,7 @@ bool flscomplex (const RowVector & tvec,
 
                                   tprb -= 2;
                                   h = - *tprb * *exp_ptr;
-                                  record_current->power_series[p].real() -=
h.imag();
-                                  record_current->power_series[p].imag() +=
h.real();
+                  record_current->power_series[p] += conj(h);
 
                                   if (++exp_ptr >= exp_pse_ptr)
                                     break;
@@ -467,8 +463,7 @@ bool flscomplex (const RowVector & tvec,
 
                                   --tpra;
                                   h = *tpra * *exp_ptr;
-                                  record_next->power_series[q].real() -=
h.imag();
-                                  record_next->power_series[q].imag() +=
h.real();
+                  record_next->power_series[q] += conj(h);
 
                                   if (++exp_ptr >= exp_pse_ptr)
                                     break;
@@ -481,8 +476,7 @@ bool flscomplex (const RowVector & tvec,
 
                                   --tpra;
                                   h = -*tpra * *exp_ptr;
-                                  record_next->power_series[q].real() -=
h.imag();
-                                  record_next->power_series[q].imag() +=
h.real();
+                  record_next->power_series[q] += conj(h);
 
                                   if (++exp_ptr >= exp_pse_ptr)
                                     break;


Sorry for the spacing change. I've also reindented the code, but I didn't
include all of the whitespace changes in this patch.

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?43345>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]