getfem-commits
[Top][All Lists]
Advanced

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

[Getfem-commits] r5067 - /trunk/getfem/src/getfem_generic_assembly.cc


From: Yves . Renard
Subject: [Getfem-commits] r5067 - /trunk/getfem/src/getfem_generic_assembly.cc
Date: Thu, 13 Aug 2015 19:20:52 -0000

Author: renard
Date: Thu Aug 13 21:20:51 2015
New Revision: 5067

URL: http://svn.gna.org/viewcvs/getfem?rev=5067&view=rev
Log:
fix a bug in the priority of operators Trace, Deviator and Print

Modified:
    trunk/getfem/src/getfem_generic_assembly.cc

Modified: trunk/getfem/src/getfem_generic_assembly.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem_generic_assembly.cc?rev=5067&r1=5066&r2=5067&view=diff
==============================================================================
--- trunk/getfem/src/getfem_generic_assembly.cc (original)
+++ trunk/getfem/src/getfem_generic_assembly.cc Thu Aug 13 21:20:51 2015
@@ -134,10 +134,10 @@
     ga_operator_priorities[GA_DOTDIV] = 2;
     ga_operator_priorities[GA_TMULT] = 2;
     ga_operator_priorities[GA_QUOTE] = 3;
-    ga_operator_priorities[GA_TRACE] = 3;
-    ga_operator_priorities[GA_DEVIATOR] = 3;
-    ga_operator_priorities[GA_PRINT] = 3;
     ga_operator_priorities[GA_UNARY_MINUS] = 3;
+    ga_operator_priorities[GA_TRACE] = 4;
+    ga_operator_priorities[GA_DEVIATOR] = 4;
+    ga_operator_priorities[GA_PRINT] = 4;
 
     return true;
   }
@@ -542,6 +542,10 @@
 
     void add_params(size_type pos) {
       GMM_ASSERT1(current_node, "internal error");
+      while (current_node && current_node->parent &&
+             current_node->parent->node_type == GA_NODE_OP &&
+             ga_operator_priorities[current_node->parent->op_type] >= 4)
+        current_node = current_node->parent;
       pga_tree_node new_node = new ga_tree_node(GA_NODE_PARAMS, pos);
       pga_tree_node parent =  current_node->parent;
       if (parent) {




reply via email to

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