X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=GHC%2FBase.lhs;h=e07e2109ff4e3a72d9e1e8f49032f300c0aad119;hb=819adca5f17b40ee129e4a30edf685f817febbf9;hp=bf37476875f76631525f465e367f0e0377f000d8;hpb=0425e42d530ad34fbef2529a20ba326dbd4109b7;p=ghc-base.git diff --git a/GHC/Base.lhs b/GHC/Base.lhs index bf37476..e07e210 100644 --- a/GHC/Base.lhs +++ b/GHC/Base.lhs @@ -672,9 +672,20 @@ id x = x lazy :: a -> a lazy x = x --- | Assertion function. This simply ignores its boolean argument. +-- Assertion function. This simply ignores its boolean argument. -- The compiler may rewrite it to @('assertError' line)@. +-- | If the first argument evaluates to 'True', then the result is the +-- second argument. Otherwise an 'AssertionFailed' exception is raised, +-- containing a 'String' with the source file and line number of the +-- call to 'assert'. +-- +-- Assertions can normally be turned on or off with a compiler flag +-- (for GHC, assertions are normally on unless the @-fignore-asserts@ +-- option is given). When assertions are turned off, the first +-- argument to 'assert' is ignored, and the second argument is +-- returned as the result. + -- SLPJ: in 5.04 etc 'assert' is in GHC.Prim, -- but from Template Haskell onwards it's simply -- defined here in Base.lhs