Changeset: 39d031bea8ac for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=39d031bea8ac
Modified Files:
        sql/backends/monet5/generator/generator.c
        sql/backends/monet5/generator/generator.mal
Branch: generator
Log Message:

Use the right MAL return type for timestamp


diffs (35 lines):

diff --git a/sql/backends/monet5/generator/generator.c 
b/sql/backends/monet5/generator/generator.c
--- a/sql/backends/monet5/generator/generator.c
+++ b/sql/backends/monet5/generator/generator.c
@@ -628,13 +628,14 @@ str VLTgenerator_thetasubselect(Client c
                                throw(MAL,"generator.thetasubselect","Unknown 
operator");
 
                        if( (f.days < l.days || (f.days = l.days && f.msecs 
<l.msecs)) && s > 0){
-                               for(; f.days<l.days || (f.days == l.days && 
f.msecs <l.msecs); o++)
-                               if( ((timestamp_isnil(low) || (f.days > 
low.days || (f.days == l.days && f.msecs >= l.msecs)) ) && ((f.days<hgh.days|| 
(f.days== hgh.days && f.msecs < hgh.msecs))  || timestamp_isnil(hgh))) || anti){
-                                       *v++ = o;
+                               for(; f.days<l.days || (f.days == l.days && 
f.msecs <l.msecs); o++){
+                                       if( ((timestamp_isnil(low) || (f.days > 
low.days || (f.days == l.days && f.msecs >= l.msecs)) ) && ((f.days<hgh.days|| 
(f.days== hgh.days && f.msecs < hgh.msecs))  || timestamp_isnil(hgh))) || anti){
+                                               *v++ = o;
+                                               c++;
+                                       }
                                        if( (msg = MTIMEtimestamp_add(&f, &f, 
&s)) != MAL_SUCCEED)
                                                return msg;
-                                       c++;
-                               } 
+                               }
                        } else
                        if( (f.days > l.days || (f.days = l.days && f.msecs >= 
l.msecs)) && s < 0){
                                for(; f.days>l.days || (f.days == l.days && 
f.msecs > l.msecs);o++ )
diff --git a/sql/backends/monet5/generator/generator.mal 
b/sql/backends/monet5/generator/generator.mal
--- a/sql/backends/monet5/generator/generator.mal
+++ b/sql/backends/monet5/generator/generator.mal
@@ -99,7 +99,7 @@ address VLTgenerator_thetasubselect;
 pattern thetasubselect(b:bat[:oid,:dbl], low:dbl, oper:str) :bat[:oid,:oid]
 address VLTgenerator_thetasubselect;
 
-pattern thetasubselect(b:bat[:oid,:timestamp], low:timestamp, oper:str) 
:bat[:oid,:timestamp]
+pattern thetasubselect(b:bat[:oid,:timestamp], low:timestamp, oper:str) 
:bat[:oid,:oid]
 address VLTgenerator_thetasubselect
 comment "Overloaded selection routine";
 
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to