From 74f8e4b04f59c79fc2320b63f7d8c0cb4de69e2b Mon Sep 17 00:00:00 2001 From: Lasse Blaauwbroek Date: Thu, 20 Sep 2018 21:05:19 +0200 Subject: Check that lambda/prod ast's have proper binders during interning/printing. --- interp/constrintern.ml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'interp') diff --git a/interp/constrintern.ml b/interp/constrintern.ml index d02f59414e..d7497d4e8e 100644 --- a/interp/constrintern.ml +++ b/interp/constrintern.ml @@ -1863,12 +1863,11 @@ let internalize globalenv env pattern_mode (_, ntnvars as lvar) c = Array.map (fun (bl,_,_) -> bl) idl, Array.map (fun (_,ty,_) -> ty) idl, Array.map (fun (_,_,bd) -> bd) idl) + | CProdN ([],c2) -> anomaly (Pp.str "The AST is malformed, found prod without binders.") | CProdN (bl,c2) -> let (env',bl) = List.fold_left intern_local_binder (env,[]) bl in expand_binders ?loc mkGProd bl (intern_type env' c2) - | CLambdaN ([],c2) -> - (* Such a term is built sometimes: it should not change scope *) - intern env c2 + | CLambdaN ([],c2) -> anomaly (Pp.str "The AST is malformed, found lambda without binders.") | CLambdaN (bl,c2) -> let (env',bl) = List.fold_left intern_local_binder (reset_tmp_scope env,[]) bl in expand_binders ?loc mkGLambda bl (intern env' c2) -- cgit v1.2.3