summaryrefslogtreecommitdiff
path: root/Source/BoogieDriver
diff options
context:
space:
mode:
authorGravatar Rustan Leino <leino@microsoft.com>2011-12-05 23:08:25 -0800
committerGravatar Rustan Leino <leino@microsoft.com>2011-12-05 23:08:25 -0800
commit1dcb9b3aa68245791e667f7354ada0dac1fbeddb (patch)
tree1f148b11bdaeb3aed4030b63d39d4b673c378d0e /Source/BoogieDriver
parent95bb8b3b4454fdc1a14fd67b22a5ac6183135cfd (diff)
parentb5eca423560fa18e89d7a03c3b8a2baa5dce3249 (diff)
Merge
Diffstat (limited to 'Source/BoogieDriver')
-rw-r--r--Source/BoogieDriver/BoogieDriver.cs19
1 files changed, 18 insertions, 1 deletions
diff --git a/Source/BoogieDriver/BoogieDriver.cs b/Source/BoogieDriver/BoogieDriver.cs
index aa132c5d..cffe3b5a 100644
--- a/Source/BoogieDriver/BoogieDriver.cs
+++ b/Source/BoogieDriver/BoogieDriver.cs
@@ -67,7 +67,22 @@ namespace Microsoft.Boogie {
Helpers.ExtraTraceInformation("Becoming sentient");
+ List<string> fileList = new List<string>();
foreach (string file in CommandLineOptions.Clo.Files) {
+ string extension = Path.GetExtension(file);
+ if (extension != null) {
+ extension = extension.ToLower();
+ }
+ if (extension == ".txt") {
+ StreamReader stream = new StreamReader(file);
+ string s = stream.ReadToEnd();
+ fileList.AddRange(s.Split(new char[3] {' ', '\n', '\r'}, StringSplitOptions.RemoveEmptyEntries));
+ }
+ else {
+ fileList.Add(file);
+ }
+ }
+ foreach (string file in fileList) {
Contract.Assert(file != null);
string extension = Path.GetExtension(file);
if (extension != null) {
@@ -79,7 +94,7 @@ namespace Microsoft.Boogie {
goto END;
}
}
- ProcessFiles(CommandLineOptions.Clo.Files);
+ ProcessFiles(fileList);
END:
if (CommandLineOptions.Clo.XmlSink != null) {
@@ -374,6 +389,8 @@ namespace Microsoft.Boogie {
// Coalesce blocks
if (CommandLineOptions.Clo.CoalesceBlocks) {
+ if (CommandLineOptions.Clo.Trace)
+ Console.WriteLine("Coalescing blocks...");
Microsoft.Boogie.BlockCoalescer.CoalesceBlocks(program);
}