diff options
author | Ziv Scully <ziv@mit.edu> | 2015-10-13 20:24:37 -0400 |
---|---|---|
committer | Ziv Scully <ziv@mit.edu> | 2015-10-13 20:24:37 -0400 |
commit | 51117ba9333e00cdd8c4c31307effbe93601d328 (patch) | |
tree | f364d4a0d54cfc24cc4408a941e6af05e13f2c4f /src/monoize.sml | |
parent | c25f458b3e1721027b76b0cf46593becfd6f2d5f (diff) |
Fix another mismatch between expunger SQL generation and SQL parser.
Diffstat (limited to 'src/monoize.sml')
-rw-r--r-- | src/monoize.sml | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/src/monoize.sml b/src/monoize.sml index 2e87a70b..bdd8f5c3 100644 --- a/src/monoize.sml +++ b/src/monoize.sml @@ -4371,16 +4371,19 @@ fun monoize env file = [] => e | eb :: ebs => (L'.ESeq ( - (L'.EDml (foldl - (fn (eb, s) => - (L'.EStrcat (s, - (L'.EStrcat (str " OR ", - cond eb), loc)), loc)) - (L'.EStrcat (str ("DELETE FROM " - ^ Settings.mangleSql tab - ^ " WHERE "), - cond eb), loc) - ebs, L'.Error), loc), + (L'.EDml ((L'.EStrcat (str ("DELETE FROM " + ^ Settings.mangleSql tab + ^ " WHERE "), + foldl (fn (eb, s) => + (L'.EStrcat (str "(", + (L'.EStrcat (s, + (L'.EStrcat (str " OR ", + (L'.EStrcat (cond eb, + str ")"), + loc)), loc)), loc)), loc)) + (cond eb) + ebs), loc), + L'.Error), loc), e), loc) in e |