From ebbd9b95e764d2d5043ced74e8f0a998a0649846 Mon Sep 17 00:00:00 2001 From: Yann Herklotz Date: Sat, 2 Feb 2019 13:43:31 +0000 Subject: Add case for empty context --- src/VeriFuzz/AST.hs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src') diff --git a/src/VeriFuzz/AST.hs b/src/VeriFuzz/AST.hs index 2e3a54e..259da50 100644 --- a/src/VeriFuzz/AST.hs +++ b/src/VeriFuzz/AST.hs @@ -323,6 +323,11 @@ expr n where subexpr y = expr (n `div` y) exprWithContext :: [Identifier] -> Int -> QC.Gen Expr +exprWithContext [] n + | n == 0 = QC.oneof exprSafeList + | n > 0 = QC.oneof $ exprRecList subexpr + | otherwise = exprWithContext [] 0 + where subexpr y = exprWithContext [] (n `div` y) exprWithContext l n | n == 0 = QC.oneof $ (Id <$> QC.elements l) : exprSafeList | n > 0 = QC.oneof $ (Id <$> QC.elements l) : exprRecList subexpr -- cgit