aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-10-26Backtrack sur commit 11467 (tentative d'optimisation meta_instance quiherbelin
s'est avéré ralentir la compilation des user-contribs au final, sans compter aussi le bug 1980 apparemment introduit par ce commit). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11505 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-25More debugging of handling of open constrs with typeclasses:msozeau
avoid trying to resolve classes early in open constr arguments for Ltac, the tactics themselves should do whatever's appropriate with the constraints. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11503 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-25Fix for bug #1981, correct the mismatch between the meta types used inmsozeau
clenv and the ones found in the refiner. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11502 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-24Raise informative errors instead of Failures or anomalies in case a metamsozeau
type contains a meta as this is currently unsupported in the refiner. Fixes bugs #1980 and #1981. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11501 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-24Fix doc of apply in (see coq-club message 26 September 2008)herbelin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11499 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-23Forgot one file which had other local modifications...msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11498 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-23Fix bug #1977 by allowing the [apply] variants to take an [open_constr]msozeau
instead of a completely resolved [constr] as input. The propagation of the evars associated to the lemma is only allowed when the evar flag is on (i.e. for [eapply]), otherwise they should be resolved by the end of the application. Should be completely backwards compatible... git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11497 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-23Open notation for declaring record instances.msozeau
It solves feature request 1852, makes me and Arnaud happy and will permit to factor some more code in typeclasses. - Records are introduced using the syntax "{| x := t; y := foo |}" and "with" clauses are currently parsed but not yet supported in the elaboration. You are invited to suggest other syntaxes :) - Missing fields are turned into holes, extra fields cause an error message. The current implementation finds the type of the record at pretyping time, from the typing constraint alone (and just expects an inductive with one constructor). It is then impossible to use scope information to parse the bodies: that may be wrong. The other solution I see is using the fields to detect the type earlier, before internalisation of the bodies, but then we get in name clash hell. - In funind/contrib/interface I mostly put [assert false] everywhere to avoid warnings. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11496 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-23Generalized implementation of generalization.msozeau
- New constr_expr construct [CGeneralization of loc * binding_kind * abstraction_kind option * constr_expr] to generalize the free vars of the [constr_expr], binding these using [binding_kind] and making a lambda or a pi (or deciding from the scope) using [abstraction_kind option] (abstraction_kind = AbsLambda | AbsPi) - Concrete syntax "`( a = 0 )" for explicit binding of [a] and "`{ ... }" for implicit bindings (both "..(" and "_(" seem much more difficult to implement). Subject to discussion! A few examples added in a test-suite file. - Also add missing syntax for implicit/explicit combinations for _binders_: "{( )}" means implicit for the generalized (outer) vars, explicit for the (inner) variable itself. Subject to discussion as well :) - Factor much typeclass instance declaration code. We now just have to force generalization of the term after the : in instance declarations. One more step to using Instance for records. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11495 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-22Fix bugs #1975 and #1976.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11494 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-22Fix for bug #1973 provided by Brian Campbell.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11492 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-22Various coqdoc improvements:msozeau
- New "color" option to the coqdoc latex style file to typeset using the xcolor package, still following the McBride convention. - Work on proper indentation and spacing of output code and allow users to customise indentation (setting a base indentation length) and line skips for empty lines of code. - Also add new environments to distinguish code and documentation, doing nothing right now. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11491 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-22A much better implementation of implicit generalization:msozeau
- Do it after internalisation (esp. after notation expansion) - Generalize it to any constr, not just typeclasses - Prepare for having settings on the implicit status of generalized variables (currently only impl,impl and expl,expl are supported). - Simplified implementation! (Still some refactoring needed in typeclasses parsing code). This patch contains a fix for bug #1964 as well. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11490 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-22Affichage des notations récursives:herbelin
- Prise en compte des notations applicatives - Remplacement du codage des arguments liste des notations récursives sous forme de terme par une représentation directe (permet notamment de résoudre un problème de stack overflow de la fonction d'affichage) + Correction bug affichage Lemma dans ppvernac.ml + Divers util.ml git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11489 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-21More OCaml-3.11-friendly configure scriptglondu
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11487 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-21warning message when a qualid to extract can be both a module or a cstletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11485 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-21duplicated open of Ppconstrletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11484 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-21Correction bug #1969.soubiran
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11483 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-20Renommage "Global Instance" en "Instance Global" pour uniformisationherbelin
de l'utilisation des modificateurs Global/Local git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11480 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-20Zdiv: eqm (equality modulo some N) can now be declared as Parametric Relationletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11476 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-20Syntaxe de COQBINnotin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11475 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-19Suite 11472 et 11473herbelin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11474 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-19Suite 11472herbelin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11473 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-19- Export de pattern_ident vers les ARGUMENT EXTEND and co.herbelin
- Extension du test de réversibilité acyclique des notations dures aux notations de type abbréviation (du genre inhabited A := A). - Ajout options Local/Global à Transparent/Opaque. - Retour au comportement 8.1 pour "move" (dependant par défaut et mot-clé dependent retiré). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11472 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-19Retour en arrière sur la mise en paramètre du premier argument deherbelin
Coq.Relation.Relation_Operators.clos_refl_sym_trans car cela échange les arguments de rst_sym et casse la compatibilité (cf p.ex. Rocq/PTS). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11471 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-19Retour en arrière pour raison de compatibilité sur la suppression du nf_evar herbelin
dans clos_norm_flags (cf échec dans CoRN.Transc.InvTrigonom.Tan_ilim). Ceci dit : - cela ne me parait pas moral que clos_norm_flags s'occupe de normaliser les evars, - mais comme "evar" n'est pas un flag supporté par closure.ml, on ne peut pas le donner à la demande comme argument de clos_norm_flags (question: pourrait-on faire supporter la réduction Evar par closure.ml ??). Plus généralement, il y a un problème avec la propagation des instantiations des evars à travers les buts (cf lemme eapply_evar dans test-suite/success/apply.v). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11470 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-18Fixed bug #1966, wrong handling of evars.msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11468 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-18Optimisation de clenv.ml pour que meta_instance ne soit pas appeléherbelin
abusivement sur les clauses. Nettoyage au passage de metamap qui était utilisé à la fois pour les substitutions de meta et pour les contextes de typage de meta. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11467 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-18Expérience de simplification de Ndigits compte tenu des tactiques existantherbelin
actuellement git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11466 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-18- Merge modifs coq_makefile.ml4 de la 8.1 vers le trunk (commit 11429)herbelin
- Makefile: typo apparente avec .ml4.preprocessed - test-suite: ajout d'un test sur eta qui trainait dans le coin git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11465 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-18Que Time n'empêche pas la colorisation des mots-clés.herbelin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11464 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-18Intégration et formattage du développement de Pierre Castéran sur lesherbelin
définitions alternatives de la transitivé d'une relation git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11462 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-17Suppression de la dépendance de install-doc envers doc :notin
- make install ne compile plus la doc - make world compile la doc (sauf si option --with-doc no) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11460 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-16Extraction of Module with eq = ... : fix for bug #1853letouzey
(unrelated: a useless pattern variable becomes _ in Extract_env) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11458 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-16Extraction of mutual types with alias: fix for bug #1965letouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11456 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-16Attempt to clarify Extract_env.extract_seb_specletouzey
-The use of Modops.type_of_mb seems to be sometimes an overkill : it expands the situation where mb.mod_type=SEBident... we use a simplier my_type_of_mb instead -No more "truetype" boolean argument to this function. Normally, the use of my_type_of_mb should ensure that all seb we inspect are "true" module types, see the invariant written before this function. -Remove the use of replicate_msid: it was commented out since a few months, no problem appeared, and anyway the handling of "With ..." has completely changed since Elie's work. -And by the way, cleanup of whitespaces at the end of lines... git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11455 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-15Report des commits 11417 et 11437 de la v8.2soubiran
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11454 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-14report de la révision r11451 (nouveau style html pour le manuel de référence)notin
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11452 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-14Dumpglob.dump_modref : fix an assert failureletouzey
The list obtained as second part of a Lib.split_modpath *can* be empty, for instance when mp is a MPfile, so calling on it Util.list_drop_last may fail. Can somebody knowledgeable in the dump mechanism (Jean-Marc ?) check that my simplistic fix is correct ? For information, I've ended on this failure while playing with a rather unnatural example: take a .v file, consider it as a module and apply it to a functor... git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11450 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-14test-suite: more utf8 tests, a test of ! ? and so on in rewritesletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11449 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-14ugly comment erroneously left in the minus definitionletouzey
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11448 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-11Backporting 11445 from 8.2 to trunk (negative conditions inherbelin
SearchAbout + referring objects by their notation). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11446 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-09* Fixed constr_cmp again to handle universes subtyping correctlypuech
* Fixed typo in unify_0 regarding conv_pb * First attempt to fix a problem related to rels in w_merge. Seems to be unsuccessful at this point git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11443 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-08Fix bug #1959 (remember: never use a partial functions mindlessly).msozeau
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11439 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-08Améliorations de l'affichage des coercions suggérées par Georges :herbelin
- Suppression d'un hack bancal qui permettait d'afficher des notations dont les arguments du premier niveau applicatif n'étaient pas syntaxiquement entourés de coercions dans la définition de la notation alors qu'ils ne pouvaient que l'être dans les termes effectifs (ex: 'Notation ... := (true /\ True)' pouvait être reconnu malgré l'absence de la coercion de bool vers Prop). - Propagation de l'information "in context" aux branches des if/let/match par symmétrie avec l'inférence de type qui propage l'information EXTERNE de type vers les branches (stratégie moins "défensive" pour la suppression des coercions). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11438 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-07fixing r11433 again:barras
- backtrack on kernel modifications: the monomorphic instance of an inductive type is constrained to live in an universe higher (or equal) than all the instances - improved support for polymorphic inductive types at the refiner level: introduced type_of_inductive_knowing_conclusion that computes the instance to match the current conclusion universe. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11435 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-07fixed pb with r11433barras
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11434 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-06bug #1951: polymorphic indtypes: universe subst was not performed in the ↵barras
type of the arguments; refiner: relaxed universe cstrs for poly indtypes git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11433 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-06## Lines starting with '## ' will be removed from the log message.msozeau
## File(s) to commit: ## tools/coqdoc/index.mll ## tools/coqdoc/output.ml ## tools/coqdoc/pretty.mll Various improvements to coqdoc: - (Hopefully) better handling of brackets and notations like \in (debugger with Stéphane Lescuyer). - More indexed tactics and commands. - Fix bug(?) in parsing of "[[" comments. - Better interpolation of module and library names. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11432 85f007b7-540e-0410-9357-904b9bb8a0f7
2008-10-03(Try to) use the conversion oracle also in w_unify to choose which constant tomsozeau
unfold first. The patch changes the usual order of unifications so some may differ (only one example in the stdlib breaks because of more unification happening). Actually this change was trigerred because of an incompleteness which is not resolved here. At least this way unfolding is consistent between w_unify and the kernel. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11427 85f007b7-540e-0410-9357-904b9bb8a0f7