From 113b703a695acbe31ac6dd6a8c4aa94f6fda7545 Mon Sep 17 00:00:00 2001 From: Stephane Glondu Date: Mon, 8 Sep 2008 00:15:04 +0200 Subject: Imported Upstream version 8.2~beta4.svn20080907+dfsg --- test-suite/check | 16 ++++++++++++---- test-suite/success/coercions.v | 21 +++++++++++++++++++++ 2 files changed, 33 insertions(+), 4 deletions(-) (limited to 'test-suite') diff --git a/test-suite/check b/test-suite/check index 571e7a67..47960e98 100755 --- a/test-suite/check +++ b/test-suite/check @@ -65,7 +65,7 @@ test_output() { done } -# La fonction suivante teste l'analyseur syntaxique fournit par "parser" +# La fonction suivante teste l'analyseur syntaxique fournit par "coq-parser" # Elle fonctionne comme test_output test_parser() { if [ -d $1 ]; then @@ -74,7 +74,7 @@ test_parser() { printf " "$f"..." tmpoutput=`mktemp /tmp/coqcheck.XXXXXX` foutput=`dirname $f`/`basename $f .v`.out - echo "parse_file 1 \"$f\"" | ../bin/parser > $tmpoutput 2>&1 + echo "parse_file 1 \"$f\"" | ../bin/coq-parser > $tmpoutput 2>&1 perl -ne 'if(/Starting.*Parser Loop/){$printit = 1};print if $printit' \ $tmpoutput 2>&1 | grep -i error > /dev/null if [ $? = 0 ] ; then @@ -250,8 +250,16 @@ echo "Interactive tests" test_interactive interactive echo "Micromega tests" test_success micromega -echo "Complexity tests" -test_complexity complexity + +# We give a chance to disable the complexity tests which may cause +# random build failures on build farms +if [ -z "$COQTEST_SKIPCOMPLEXITY" ]; then + echo "Complexity tests" + test_complexity complexity +else + echo "Skipping complexity tests" +fi + echo "Module tests" $coqtop -compile modules/Nat $coqtop -compile modules/plik diff --git a/test-suite/success/coercions.v b/test-suite/success/coercions.v index d652132e..525348de 100644 --- a/test-suite/success/coercions.v +++ b/test-suite/success/coercions.v @@ -61,3 +61,24 @@ Check fun (H : For_all (fun x => C (f x))) => H : For_all (fun x => D (f x)). End Q. +(* Combining class lookup and path lookup so that if a lookup fails, another + descent in the class can be found (see wish #1934) *) + +Record Setoid : Type := +{ car :> Type }. + +Record Morphism (X Y:Setoid) : Type := +{evalMorphism :> X -> Y}. + +Definition extSetoid (X Y:Setoid) : Setoid. +intros X Y. +constructor. +exact (Morphism X Y). +Defined. + +Definition ClaimA := forall (X Y:Setoid) (f: extSetoid X Y) x, f x= f x. + +Coercion irrelevent := (fun _ => I) : True -> car (Build_Setoid True). + +Definition ClaimB := forall (X Y:Setoid) (f: extSetoid X Y) (x:X), f x= f x. + -- cgit v1.2.3