[M3devel] subranges 0..-1?

Jay K jay.krell at cornell.edu
Sun Oct 3 14:51:52 CEST 2010


../src/Common/X.i3: In function 'X_I3':
../src/Common/X.i3:4845:0: internal compiler error: in m3cg_declare_subrange, at m3cg/parse.c:3567


  gcc_assert (min <= max);

  XClientMessageEvent = RECORD
     type: int;
     serial: unsigned_long;    (* # of last request processed by server *)
     send_event: Bool;         (* true if this came from a SendEvent request *)
     display: DisplayStar;     (* Display the event was read from *)
     window: Window;
     message_type: Atom;
     format: int;
     alignment: ARRAY [0..-1] OF long;
     data: ARRAY [0..MAX (20 * BYTESIZE (char),
                          MAX (10 * BYTESIZE (short),
                               5 * BYTESIZE (long))) - 1] OF char; END;


     alignment: ARRAY [0..-1] OF long;


typedef struct {
    int type;
    unsigned long serial;    /* # of last request processed by server */
    Bool send_event;    /* true if this came from a SendEvent request */
    Display *display;    /* Display the event was read from */
    Window window;
    Atom message_type;
    int format;
    union {
        char b[20];
        short s[10];
        long l[5];
        } data;
} XClientMessageEvent;



eh?


I'll remove the assert.
"Clearly"? the Modula-3 should just use an array of long though for the union?


 - Jay

 		 	   		  


More information about the M3devel mailing list