From f71ec3907c0535bf6831ed60a3656ecbe8ac744f Mon Sep 17 00:00:00 2001 From: Hugo Herbelin Date: Tue, 25 Feb 2020 07:55:49 +0100 Subject: Fixing residual bug of #11120. On the principle that a notation to a constant inherits the implicit arguments of the constant, a non-applied notation should inherit its next maximal implicit arguments. --- interp/constrintern.ml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'interp') diff --git a/interp/constrintern.ml b/interp/constrintern.ml index c39e61083d..8a820293a0 100644 --- a/interp/constrintern.ml +++ b/interp/constrintern.ml @@ -2057,7 +2057,9 @@ let internalize globalenv env pattern_mode (_, ntnvars as lvar) c = intern env (CAst.make ?loc @@ CPrim (Numeral (SMinus,p))) | CNotation (_,(InConstrEntrySomeLevel,"( _ )"),([a],[],[],[])) -> intern env a | CNotation (_,ntn,args) -> - intern_notation intern env ntnvars loc ntn args + let c = intern_notation intern env ntnvars loc ntn args in + let x, impl, scopes, l = find_appl_head_data c in + apply_impargs x env impl scopes l loc | CGeneralization (b,a,c) -> intern_generalization intern env ntnvars loc b a c | CPrim p -> -- cgit v1.2.3