summaryrefslogtreecommitdiff
path: root/src/lem_interp
diff options
context:
space:
mode:
authorGabriel Kerneis2014-01-14 18:17:18 +0100
committerGabriel Kerneis2014-01-14 18:57:47 +0100
commit048256944331ed646225e856fca56728a074f3a6 (patch)
treeb04a297de796a1a19061cf4ec213e43cac199856 /src/lem_interp
parent3a2d580deda67a57c3bf29f5fbd350e366c8562b (diff)
Fix vector concat pattern matching
The concatenation list was reversed.
Diffstat (limited to 'src/lem_interp')
-rw-r--r--src/lem_interp/interp.lem4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lem_interp/interp.lem b/src/lem_interp/interp.lem
index 8b801bee..39793bb5 100644
--- a/src/lem_interp/interp.lem
+++ b/src/lem_interp/interp.lem
@@ -406,8 +406,8 @@ let rec match_pattern p value =
match value with
| V_vector n inc vals ->
let (matched_p,bounds,remaining_vals) =
- List.foldr
- (fun pat (matched_p,bounds,r_vals) ->
+ List.foldl
+ (fun (matched_p,bounds,r_vals) pat ->
match pat with
| P_vector pats -> vec_concat_match pats r_vals
| P_id id -> (false,[],[]) (*Need to have at least a guess of how many to consume*)