mirror of
https://github.com/tursodatabase/limbo.git
synced 2025-08-04 18:18:03 +00:00
Merge 'Fix Unary Negate Operation on Blobs' from Pedro Muniz
Fixing stuff that appears in Fuzz testing. # Before <img width="668" alt="image" src="https://github.com/user- attachments/assets/f1f59b63-5173-4932-98b2-774803cb8a8e" /> ``` limbo> EXPLAIN SELECT -x''; addr opcode p1 p2 p3 p4 p5 comment ---- ----------------- ---- ---- ---- ------------- -- ------- 0 Init 0 5 0 0 Start at 5 1 Blob 0 2 0 0 r[2]= (len=0) 2 Multiply 3 2 1 0 r[1]=r[3]*r[2] 3 ResultRow 1 1 0 0 output=r[1] 4 Halt 0 0 0 0 5 Integer -1 3 0 0 r[3]=-1 6 Goto 0 1 0 0 ``` # After <img width="175" alt="image" src="https://github.com/user- attachments/assets/9f361dc3-b243-4d69-bdd2-d6a2bbc0bf20" /> ``` limbo> EXPLAIN SELECT -x''; addr opcode p1 p2 p3 p4 p5 comment ---- ----------------- ---- ---- ---- ------------- -- ------- 0 Init 0 5 0 0 Start at 5 1 Blob 0 2 0 0 r[2]= (len=0) 2 Subtract 3 2 1 0 r[1]=r[3]-r[2] 3 ResultRow 1 1 0 0 output=r[1] 4 Halt 0 0 0 0 5 Integer 0 3 0 0 r[3]=0 6 Goto 0 1 0 0 ``` # Sqlite ``` sqlite> SELECT -x''; 0 sqlite> EXPLAIN SELECT -x''; addr opcode p1 p2 p3 p4 p5 comment ---- ------------- ---- ---- ---- ------------- -- ------------- 0 Init 0 4 0 0 Start at 4 1 Subtract 3 2 1 0 r[1]=r[2]-r[3] 2 ResultRow 1 1 0 0 output=r[1] 3 Halt 0 0 0 0 4 Integer 0 2 0 0 r[2]=0 5 Blob 0 3 0 0 r[3]= (len=0) 6 Goto 0 1 0 0 ``` Closes #1333
This commit is contained in:
commit
cc8f89e8e0
3 changed files with 22 additions and 3 deletions
|
@ -95,6 +95,18 @@ do_execsql_test subtract-agg-float-agg-int {
|
|||
SELECT sum(3.5) - sum(1)
|
||||
} {2.5}
|
||||
|
||||
do_execsql_test subtract-blob {
|
||||
SELECT -x'11'
|
||||
} {0}
|
||||
|
||||
do_execsql_test subtract-blob-empty {
|
||||
SELECT -x''
|
||||
} {0}
|
||||
|
||||
do_execsql_test subtract-blob-charcter {
|
||||
SELECT -'hi';
|
||||
} {0}
|
||||
|
||||
foreach {testnum lhs rhs ans} {
|
||||
1 'a' 'a' 0
|
||||
2 'a' 10 -10
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue