diff options
author | qunyanm <unknown> | 2015-11-04 10:36:54 -0800 |
---|---|---|
committer | qunyanm <unknown> | 2015-11-04 10:36:54 -0800 |
commit | 2b7d31bb3e0276028a8bc50c4933ea60fed5fb60 (patch) | |
tree | 440daf98c064206447363a06d1078a11813e750e /Source/DafnyDriver | |
parent | 13986f209b6e49031aa53346e96bc517c0ad5e75 (diff) |
Fix issue89. Copy the out param to a local before use it in an anonymous
method that is generated by LetExpr. Change the compiler so that each stmt
writes to its own buffer before add it to the program's buffer so that we can
insert the above mentioned copy instruction before the stmt.
Diffstat (limited to 'Source/DafnyDriver')
-rw-r--r-- | Source/DafnyDriver/DafnyDriver.cs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Source/DafnyDriver/DafnyDriver.cs b/Source/DafnyDriver/DafnyDriver.cs index 8282edc7..6cfbe7e1 100644 --- a/Source/DafnyDriver/DafnyDriver.cs +++ b/Source/DafnyDriver/DafnyDriver.cs @@ -300,14 +300,14 @@ namespace Microsoft.Dafny // Compile the Dafny program into a string that contains the C# program
StringWriter sw = new StringWriter();
- Dafny.Compiler compiler = new Dafny.Compiler(sw);
+ Dafny.Compiler compiler = new Dafny.Compiler();
compiler.ErrorWriter = outputWriter;
var hasMain = compiler.HasMain(dafnyProgram);
if (DafnyOptions.O.RunAfterCompile && !hasMain) {
// do no more
return;
}
- compiler.Compile(dafnyProgram);
+ compiler.Compile(dafnyProgram, sw);
var csharpProgram = sw.ToString();
bool completeProgram = compiler.ErrorCount == 0;
|