Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!usc!elroy.jpl.nasa.gov!decwrl!pa.dec.com!src.dec.com!Thomas Roemke From: modula-3@uni-paderborn.de (Thomas Roemke) Newsgroups: comp.lang.modula3 Subject: ASSERT vs. error message Message-ID: <9104191257.AA10485@thor.uni-paderborn.de> Date: 19 Apr 91 13:10:43 GMT Lines: 30 To: m3 X-Mailer: ELM [version 2.3 PL11] The program below contains an illegal default method value for p. I expected to get an error message like ''default is incompatible with method type'', but instead I got: M3 runtime error, "Type.m3":473: ASSERT failed Program /homes/thor/modula-3/m3_1.6/lib/m3/m3compiler got fatal signal 3. Why are you using an ASSERT ? Is the computation of ''is AB a supertype of A'' more complex than calculating A <: AB ? MODULE bugtest EXPORTS Main; TYPE A = OBJECT a: INTEGER METHODS p() := Pab END; AB = A OBJECT b: INTEGER END; PROCEDURE Pab(self: AB) = BEGIN END Pab; BEGIN END bugtest. Thomas -- (* Thomas Roemke, University of Paderborn, Germany modula-3@uni-paderborn.de ..!uunet!mcsun!unido!pbinfo!modula-3 *)