Skip to content

Commit 395a1a4

Browse files
committed
Add BlockFailureMessages to report a block level failure immediately
1 parent b32f732 commit 395a1a4

File tree

2 files changed

+13
-5
lines changed

2 files changed

+13
-5
lines changed

Diff for: src/main/scala/viper/silver/reporter/Message.scala

+11-4
Original file line numberDiff line numberDiff line change
@@ -333,9 +333,16 @@ case class BlockReachedMessage(methodName: String, label: String, pathId: Int) e
333333
override val toString: String = s"block_reached_message(methodName=$methodName, label=$label, pathId=$pathId)"
334334
override val name: String = "block_reached_message"
335335
}
336+
337+
/** Reported when a block of a method CFG failed
338+
*/
339+
case class BlockFailureMessage(methodName: String, label: String, pathId: Int) extends Message {
340+
override val toString: String = s"block_failure_message(methodName=$methodName, label=$label, pathId=$pathId)"
341+
override val name: String = "block_failure_message"
342+
}
336343
/** Reported when an execution path through a method has completed.
337-
*/
338-
case class PathProcessedMessage(methodName: String, label: String, pathId: Int, verificationResultKind: String) extends Message {
339-
override val toString: String = s"Path_processed_message(methodName=$methodName, label=$label, pathId=$pathId, result=$verificationResultKind)"
340-
override val name: String = "Path_processed_message"
344+
*/
345+
case class PathProcessedMessage(methodName: String, pathId: Int, result: String) extends Message {
346+
override val toString: String = s"path_processed_message(methodName=$methodName, pathId=$pathId, result=$result)"
347+
override val name: String = "path_processed_message"
341348
}

Diff for: src/main/scala/viper/silver/reporter/Reporter.scala

+2-1
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,8 @@ case class StdIOReporter(name: String = "stdout_reporter", timeInfo: Boolean = t
190190
case _: QuantifierInstantiationsMessage => // too verbose, do not print
191191
case _: QuantifierChosenTriggersMessage => // too verbose, do not print
192192
case _: VerificationTerminationMessage =>
193-
case _: BlockReachedMessage => // println(msg)
193+
case _: BlockReachedMessage => // println(msg)
194+
case _: BlockFailureMessage => // println(msg)
194195
case _: PathProcessedMessage => // println(msg)
195196
case _ =>
196197
println( s"Cannot properly print message of unsupported type: $msg" )

0 commit comments

Comments
 (0)