home *** CD-ROM | disk | FTP | other *** search
/ ftp.ee.pdx.edu / 2014.02.ftp.ee.pdx.edu.tar / ftp.ee.pdx.edu / pub / users / Harry / compilers / p2 / tst / testLimits.pcat < prev   
Text File  |  2005-10-11  |  3KB  |  50 lines

  1. (* This file should not cause any errors. *)
  2.  
  3. (* Test the keywords *)
  4. and    array    begin    by    div    do    else    elseif    end    exit
  5. for    if    is    loop    mod    not    of    or    procedure
  6. program    read    record    return    then    to    type    var    while    write
  7.  
  8. (* Make sure that upper case keywords are recognized as identifiers *)
  9. AND    ARRAY    BEGIN    BY    DIV    DO    ELSE    ELSEIF    END    EXIT
  10. FOR    IF    IS    LOOP    MOD    NOT    OF    OR    PROCEDURE
  11. PROGRAM    READ    RECORD    RETURN    THEN    TO    TYPE    VAR    WHILE    WRITE
  12.  
  13. (* Test all the single and double character operators and delimiters *)
  14.   :=  +  -  *  /  <  <= >  >=  =  <> :  ;  ,  .  (  )  [  ] {  }
  15.  
  16. (* Here is
  17.    a multi-line
  18.    comment. *)
  19.  
  20. (* Here is a long but legal ID *)
  21. longIdentifer45678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345
  22.  
  23. (* Test that equal strings are handled correctly *)
  24. abc
  25. "abc"
  26. abc
  27. "abc"
  28.  
  29. (* The following string has all the printable ASCII characters *)
  30. " !#$%&'()*+,-./0123456789:;<=>?@ABC...XYZ[\]^_`abc...xyz{|}~"
  31.  
  32. (* This comment has a variety of characters
  33.  !"#$%&'()*+,-./0123456789:;<=>?@ABC...XYZ[\]^_`abc...xyz{|}~  *)
  34.  
  35. (* This comments has tab    and \007  *)
  36.  
  37. (* Here is a large but legal integer *)     2147483647
  38.  
  39. (* Here is a large real number *)
  40. 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234.678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
  41.  
  42. (* Here is a long but legal string *)
  43. "longString12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345"
  44.  
  45. (* Test tightly packed tokens... *)
  46. a:b:=c+d++e::f<g<<h<==i>j>>k>>=l<>>m<<>n,o,p[q[<r[[<<s>]t>>]u>>]]v>>}w
  47. a/b//c///d*e**e***f...,,,;;;(())[[]]{{}}[<>]:=:=:g=:=h
  48. do:do:=do+do++do::do<do<<do<==do>do>>do>>=do<>>do<<>do,do,do[do[<do[[<<do>]do
  49. do>>]do>>]]do>>}do
  50.