diff --git a/prism/src/explicit/Bisimulation.java b/prism/src/explicit/Bisimulation.java index bae09172..4819169a 100644 --- a/prism/src/explicit/Bisimulation.java +++ b/prism/src/explicit/Bisimulation.java @@ -228,6 +228,7 @@ public class Bisimulation extends PrismComponent /** * Display the current partition, showing the states in each block. */ + @SuppressWarnings("unused") private void printPartition(Model model) { for (int i = 0; i < numBlocks; i++) { diff --git a/prism/src/explicit/DTMCUniformisedSimple.java b/prism/src/explicit/DTMCUniformisedSimple.java index 488377ea..9f1398d1 100644 --- a/prism/src/explicit/DTMCUniformisedSimple.java +++ b/prism/src/explicit/DTMCUniformisedSimple.java @@ -26,16 +26,17 @@ package explicit; -import java.io.File; -import java.util.*; +import java.util.BitSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import java.util.Map.Entry; -import explicit.rewards.MCRewards; import parser.State; import parser.Values; import prism.ModelType; import prism.PrismException; -import prism.PrismLog; +import explicit.rewards.MCRewards; /** * Simple explicit-state representation of a DTMC, constructed (implicitly) as the uniformised DTMC of a CTMC. diff --git a/prism/src/explicit/StateModelChecker.java b/prism/src/explicit/StateModelChecker.java index b5ac2d67..6db60316 100644 --- a/prism/src/explicit/StateModelChecker.java +++ b/prism/src/explicit/StateModelChecker.java @@ -35,7 +35,6 @@ import java.util.BitSet; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Vector; import parser.State; import parser.Values; @@ -51,7 +50,6 @@ import parser.ast.ExpressionIdent; import parser.ast.ExpressionLabel; import parser.ast.ExpressionLiteral; import parser.ast.ExpressionProp; -import parser.ast.ExpressionTemporal; import parser.ast.ExpressionUnaryOp; import parser.ast.ExpressionVar; import parser.ast.LabelList; @@ -61,7 +59,6 @@ import parser.ast.Property; import parser.type.TypeBool; import parser.type.TypeDouble; import parser.type.TypeInt; -import parser.type.TypePathBool; import parser.visitor.ASTTraverseModify; import prism.Filter; import prism.ModelType; @@ -1148,15 +1145,19 @@ public class StateModelChecker extends PrismComponent in = new BufferedReader(new FileReader(new File(filename))); // Parse first line to get label list s = in.readLine(); - if (s == null) + if (s == null) { + in.close(); throw new PrismException("Empty labels file"); + } ss = s.split(" "); labels = new ArrayList(ss.length); for (i = 0; i < ss.length; i++) { s = ss[i]; j = s.indexOf('='); - if (j < 0) + if (j < 0) { + in.close(); throw new PrismException("Corrupt labels file (line 1)"); + } k = Integer.parseInt(s.substring(0, j)); while (labels.size() <= k) labels.add("?"); diff --git a/prism/src/explicit/StateValues.java b/prism/src/explicit/StateValues.java index 1def2fe8..c0291915 100644 --- a/prism/src/explicit/StateValues.java +++ b/prism/src/explicit/StateValues.java @@ -1207,8 +1207,10 @@ public class StateValues while (s != null) { s = s.trim(); if (!("".equals(s))) { - if (count + 1 > size) + if (count + 1 > size) { + in.close(); throw new PrismException("Too many values in file \"" + file + "\" (more than " + size + ")"); + } if (type instanceof TypeInt) { int i = Integer.parseInt(s); setIntValue(count, i); diff --git a/prism/src/explicit/SubNondetModel.java b/prism/src/explicit/SubNondetModel.java index 92fbdccd..42b14137 100644 --- a/prism/src/explicit/SubNondetModel.java +++ b/prism/src/explicit/SubNondetModel.java @@ -31,7 +31,6 @@ import java.io.File; import java.util.ArrayList; import java.util.BitSet; import java.util.HashMap; -import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map;