[M3devel] Fwd: [CM3] #1149: cm3 compiler looping
Olaf Wagner
wagner at elegosoft.com
Mon Sep 6 09:57:42 CEST 2010
FYI
----- Forwarded message from bugs at elego.de -----
Date: Sat, 04 Sep 2010 12:22:52 -0000
From: CM3 <bugs at elego.de>
Reply-To: CM3 <bugs at elego.de>
Subject: [CM3] #1149: cm3 compiler looping
To: peter.mckinna at gmail.com, wagner at elego.de
#1149: cm3 compiler looping
------------------------------------------+---------------------------------
Reporter: peter.mckinna@… | Owner: wagner
Type: sw-bug | Status: new
Priority: medium | Milestone:
Component: sys | Version: 5.8.6
Severity: serious | Keywords:
Relnote: | Org:
Estimatedhours: 0 | Hours: 0
Billable: 1 | Totalhours: 0
Internal: 0 |
------------------------------------------+---------------------------------
Htr:
copy the following files to a src directory and run cm3.
A.i3
INTERFACE A;
TYPE
CBase <: CBasePublic;
CBasePublic =
BRANDED OBJECT
METHODS
area(parm: INTEGER): INTEGER;
END;
END A.
A.m3
MODULE A;
BEGIN
END A.
B.i3
INTERFACE B;
IMPORT A;
TYPE
CSubobj1 <: CSubobj1Public;
CSubobj1Public = A.CBase BRANDED OBJECT
METHODS
area1(parm: INTEGER);
END;
END B.
B.m3
UNSAFE MODULE B;
IMPORT BRaw;
IMPORT IO;
PROCEDURE A1(self : CSubobj1; parm : INTEGER) =
BEGIN
END A1;
REVEAL
CSubobj1 =
CSubobj1Public BRANDED OBJECT
OVERRIDES
area1 := A1;
END;
BEGIN
END B.
BRaw.i3
INTERFACE BRaw;
FROM A IMPORT CBase;
REVEAL
CSubobj1 = CBase;
END BRaw.
m3makefile
import("libm3")
module("A")
interface("BRaw")
module ("B")
library("test")
Fix:
Env:
------------------------------------------+---------------------------------
the cm3 compiler loops on a reveal statement using 100% cpu. I was making
changes to swig generator and inadvertently generated some degenerate
code. I have distilled the problem to the sources. It is caused by the
reveal stmt in BRaw,i3
--
Ticket URL: <http://projects.elego.de/cm3/ticket/1149>
CM3 <http://projects.elego.de/cm3>
Critical Mass Modula3 Compiler
----- End forwarded message -----
--
Olaf Wagner -- elego Software Solutions GmbH
Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96 mobile: +49 177 2345 869 fax: +49 30 23 45 86 95
http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194
More information about the M3devel
mailing list