diff options
| author | Graydon Hoare <graydon@mozilla.com> | 2011-01-03 18:22:27 -0800 |
|---|---|---|
| committer | Graydon Hoare <graydon@mozilla.com> | 2011-01-03 18:22:27 -0800 |
| commit | 0040a31076f750992ad903b2ae2b7a724808f028 (patch) | |
| tree | 1eb091ad087ffb1aee769d218d9e2e420d30415a /src | |
| parent | 019095c9e691cb9bb1357dab67bf1ca584b09d0e (diff) | |
| download | rust-0040a31076f750992ad903b2ae2b7a724808f028.tar.gz rust-0040a31076f750992ad903b2ae2b7a724808f028.zip | |
Fix fold bug on expr_bind.
Diffstat (limited to 'src')
| -rw-r--r-- | src/comp/middle/fold.rs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/comp/middle/fold.rs b/src/comp/middle/fold.rs index 31ccd821f00..464735b40a6 100644 --- a/src/comp/middle/fold.rs +++ b/src/comp/middle/fold.rs @@ -444,6 +444,9 @@ fn fold_expr[ENV](&ENV env, ast_fold[ENV] fld, &@expr e) -> @expr { let vec[option.t[@ast.expr]] aargs_opt = vec(); for (option.t[@ast.expr] t_opt in args_opt) { alt (t_opt) { + case (none[@ast.expr]) { + aargs_opt += none[@ast.expr]; + } case (some[@ast.expr](?e)) { aargs_opt += vec(some(fold_expr(env_, fld, e))); } |
