aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/monoize.sml
diff options
context:
space:
mode:
authorGravatar Ziv Scully <ziv@mit.edu>2015-10-13 20:24:37 -0400
committerGravatar Ziv Scully <ziv@mit.edu>2015-10-13 20:24:37 -0400
commit51117ba9333e00cdd8c4c31307effbe93601d328 (patch)
treef364d4a0d54cfc24cc4408a941e6af05e13f2c4f /src/monoize.sml
parentc25f458b3e1721027b76b0cf46593becfd6f2d5f (diff)
Fix another mismatch between expunger SQL generation and SQL parser.
Diffstat (limited to 'src/monoize.sml')
-rw-r--r--src/monoize.sml23
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