Update of /cvsroot/monetdb/pathfinder/compiler/algebra/prop
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv17987/algebra/prop

Modified Files:
        prop_reqval.c 
Log Message:
-- Cope with trivial Boolean cast in required value property inference.


Index: prop_reqval.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/algebra/prop/prop_reqval.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- prop_reqval.c       4 Jan 2007 15:26:19 -0000       1.17
+++ prop_reqval.c       14 Feb 2007 10:01:23 -0000      1.18
@@ -292,8 +292,23 @@
             prop_infer_reqvals (L(n), rv);
             break;
 
-        case la_type:
         case la_cast:
+            if (n->sem.type.ty == aat_bln) {
+                bool att_bln = false;
+                for (unsigned int i = 0; i < n->schema.count; i++)
+                    if (n->sem.type.att == n->schema.items[i].name) {
+                        att_bln = (n->schema.items[i].type == aat_bln);
+                        break;
+                    }
+
+                if (att_bln && PFprop_reqval (n->prop, n->sem.type.res)) {
+                    rv.name = union_ (rv.name, n->sem.type.att);
+                    if (PFprop_reqval_val (n->prop, n->sem.type.res))
+                        rv.val = union_ (rv.val, n->sem.type.att);
+                }
+            }
+            /* fall through */
+        case la_type:
             rv.name = diff (rv.name, n->sem.type.res);
             rv.val = diff (rv.val, n->sem.type.res);
             prop_infer_reqvals (L(n), rv);


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins

Reply via email to