home *** CD-ROM | disk | FTP | other *** search
- #!vsl
-
- // $Id: errors,v 1.1.1.1 1995/05/01 15:48:49 zeller Exp $ -- Testdatei fuer Fehlererkennung
-
- // $Log: errors,v $
- # Revision 1.1.1.1 1995/05/01 15:48:49 zeller
- # DDD 0.9 distribution
- #
- // Revision 9.3 1993/06/25 12:03:35 zeller
- // Fix: Kommentare Log-Datei angepasst
- //
- // Revision 9.2 1993/05/22 20:22:25 zeller
- // %Q% added by apply-q-flag.sh 1.5
- //
- // Revision 9.1 1991/07/08 06:01:14 zeller
- // Installierte Version
- //
- // Revision 8.1 1991/07/06 15:04:15 zeller
- // Installierte Version
- //
- // Revision 4.1 1991/05/25 12:52:30 zeller
- // Neue Version mit folgenden Eigenschaften:
- // Let- und Where-Konstrukten;
- // Lokalen und globalen Funktionen, Overloading;
- // Erweiterten Fehlermeldungen.
- //
- // Revision 3.3 1991/04/27 18:46:05 zeller
- // Pruefungen ueberarbeitet;
- // Pruefungen auf ungueltige Pattern hinzugefuegt
- //
- // Revision 3.2 1991/04/27 14:46:31 zeller
- // Operatoren umgestellt: '|' -> ':', '!' -> '|' (wie gehabt)
- //
- // Revision 3.1 1991/02/27 02:10:31 zeller
- // Umstellung auf neue Syntax (fast ganz wieder die alte)
- //
- // Revision 2.2 1991/02/26 11:51:44 zeller
- // Umstellung von 'dispVSL' auf 'vsl'
- //
- // Revision 2.1 1991/02/26 11:46:08 zeller
- // Anpassung auf neue Syntax (vorerst ungetestet)
- //
- // Revision 1.6 1991/02/10 18:25:01 zeller
- // Letzte Definition muss global sein, um nicht geloescht zu werden
- //
- // Revision 1.5 1991/01/23 19:01:31 zeller
- // Testfunktionen Pattern-Matching eingefuegt
- //
- // Revision 1.4 1990/08/29 12:27:36 zeller
- // syntax_error_test() eingefuehrt
- //
- // Revision 1.3 1990/08/28 19:24:44 zeller
- // main() entfernt
- //
- // Revision 1.2 1990/08/26 13:46:03 zeller
- // ID's korrigiert
- //
- // Revision 1.1 1990/08/26 13:44:05 zeller
- // Initial revision
- //
-
- #include <std.vsl>
-
- // infinite_test (should generate a warning when optimizing)
- infinite_test() = "Hallo" & infinite_test();
-
- // syntax_error_test (should generate an error)
- syntax_error_test() = "a" & @;
-
- // undefined_test (should generate an error)
- undefined_test() = __never__defined();
-
- // arg_test (should generate an error)
- arg_test(a) = b;
-
- // multiple_arg_test (should generate an error)
- multiple_arg_test(a, a) = 0;
-
- // multiple_definition_test (should generate an error)
- multiple_definition_test(a, b) = 0;
- multiple_definition_test(c, d) = 1;
-
- // shadow_test (should generate a warning)
- shadow_test(...) = 0;
- shadow_test(a) = a;
-
- // bad pattern test (should generate an error)
- nmt(a) = a * a;
- no_match_test(nmt(a)) = a;
-
- // bad pattern test (should generate an error)
- mmt(a) = a & a;
- multiple_match_test(mmt(a)) = a;
-
- // recursive match test (should generate an error)
- f(a) = 1;
- recursive_match_test(f(a)) = 0;
- recursive_match_test(recursive_match_test(a)) = 0;
-
- errors_explanation() =
- "This is '$RCSfile: errors,v $ $Revision: 1.1.1.1 $'."
- | "You should have seen various errors while loading.";
-
- errors_main() = errors_explanation();
- errors_main(...) -> errors_main();
-