[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