Mentions légales du service

Skip to content

Handle builtins in a generic way

Guillaume Melquiond requested to merge generic-builtins into master

The main motivation is to prevent undefined values from aborting why3 execute. The following example now fails with "Execution terminated because an undefined argument was passed to builtin (+)".

use int.Int
val ref x : int
let f () = x <- x + 0

Hopefully, this will also make the implementation of additional builtins a lot less tedious.

Merge request reports