Author: Diego Barrios Romero <[email protected]>
Date:   Tue Mar 13 19:37:30 2012 +0100

Apply patch #3424217. Fix compiling issues with clang compiler
Thanks to Hisashi Todd Fujinaka

---

 ETL/ETL/_bezier.h     |   22 +++++++++++-----------
 ETL/ETL/_clock_base.h |    4 ++--
 ETL/ETL/_curve_func.h |    1 +
 ETL/ETL/_smach.h      |    8 +++++++-
 4 files changed, 21 insertions(+), 14 deletions(-)

diff --git a/ETL/ETL/_bezier.h b/ETL/ETL/_bezier.h
index fe6b170..c9459da 100644
--- a/ETL/ETL/_bezier.h
+++ b/ETL/ETL/_bezier.h
@@ -563,8 +563,8 @@ public:
                        for(;i;i--)
                        {
                                // compare 33% of the way between r and s with 
67% of the way between r and s
-                               if(dist(operator()((s-r)*(1.0/3.0)+r), x) <
-                                  dist(operator()((s-r)*(2.0/3.0)+r), x))
+                               if(dist(this->operator()((s-r)*(1.0/3.0)+r), x) 
<
+                                  dist(this->operator()((s-r)*(2.0/3.0)+r), x))
                                        s=t;
                                else
                                        r=t;
@@ -579,15 +579,15 @@ public:
                const time_type inc((s-r)/steps);
                if (!inc) return 0;
                distance_type ret(0);
-               value_type last(operator()(r));
+               value_type last(this->operator()(r));
 
                for(r+=inc;r<s;r+=inc)
                {
-                       const value_type n(operator()(r));
+                       const value_type n(this->operator()(r));
                        ret+=dist.uncook(dist(last,n));
                        last=n;
                }
-               ret+=dist.uncook(dist(last,operator()(r)))*(s-(r-inc))/inc;
+               
ret+=dist.uncook(dist(last,this->operator()(r)))*(s-(r-inc))/inc;
 
                return ret;
        }
@@ -623,16 +623,16 @@ public:
                rt[3] = d;
 
                //2nd stage calc
-               lt[1] = affine_func(a,b,t);
-               temp = affine_func(b,c,t);
-               rt[2] = affine_func(c,d,t);
+               lt[1] = this->affine_func(a,b,t);
+               temp = this->affine_func(b,c,t);
+               rt[2] = this->affine_func(c,d,t);
 
                //3rd stage calc
-               lt[2] = affine_func(lt[1],temp,t);
-               rt[1] = affine_func(temp,rt[2],t);
+               lt[2] = this->affine_func(lt[1],temp,t);
+               rt[1] = this->affine_func(temp,rt[2],t);
 
                //last stage calc
-               lt[3] = rt[0] = affine_func(lt[2],rt[1],t);
+               lt[3] = rt[0] = this->affine_func(lt[2],rt[1],t);
 
                //set the time range for l,r (the inside values should be 1, 0 
respectively)
                lt.set_r(get_r());
diff --git a/ETL/ETL/_clock_base.h b/ETL/ETL/_clock_base.h
index 32d8742..3f33d6f 100644
--- a/ETL/ETL/_clock_base.h
+++ b/ETL/ETL/_clock_base.h
@@ -74,7 +74,7 @@ public:
        { get_current_time(base_time); }
 
        value_type operator()()const
-       { return timestamp_to_seconds(get_current_time()-base_time); }
+       { return this->timestamp_to_seconds(get_current_time()-base_time); }
 
        value_type pop_time()
        {
@@ -84,7 +84,7 @@ public:
                // Put the current time into base_time
                get_current_time(base_time);
 
-               return timestamp_to_seconds(base_time-old_time);
+               return this->timestamp_to_seconds(base_time-old_time);
        }
 
        static void
diff --git a/ETL/ETL/_curve_func.h b/ETL/ETL/_curve_func.h
index b2898aa..8a45860 100644
--- a/ETL/ETL/_curve_func.h
+++ b/ETL/ETL/_curve_func.h
@@ -30,6 +30,7 @@
 /* === H E A D E R S ======================================================= */
 
 #include <functional>
+#include "_fixed.h"
 
 /* -- C L A S S E S --------------------------------------------------------- 
*/
 
diff --git a/ETL/ETL/_smach.h b/ETL/ETL/_smach.h
index 99a7320..9cd1439 100644
--- a/ETL/ETL/_smach.h
+++ b/ETL/ETL/_smach.h
@@ -582,7 +582,13 @@ public:
 
                        return ret;
                }
-               catch(egress_exception) { return 
egress()?RESULT_ACCEPT:RESULT_ERROR; }
+               catch(egress_exception) {
+                       if (egress()) {
+                               RESULT_ACCEPT;
+                       } else {
+                               RESULT_ERROR;
+                       }
+               }
                catch(pop_exception) { pop_state(); return RESULT_ACCEPT; }
                catch(const state_base* state) { return 
enter(state)?RESULT_ACCEPT:RESULT_ERROR; }
        }


------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to