[M3devel] LONGINT -> more bugs in m3tk

Rodney M. Bates rodney_bates at lcwb.coop
Wed May 18 23:41:31 CEST 2011


Thanks.  That got me going.

On 05/17/2011 08:35 PM, Mika Nystrom wrote:
> I think you'll get that error if you run stubgen on anything that references
> a type from BasicCtypes (e.g., int, char_star ...)
>
> I'm pretty sure I actually got it running the stub generator for my
> Scheme interpreter, which I have posted links to here a few times, but I
> haven't had time to push into CM3 yet.
>
>       Mika
>
> "Rodney M. Bates" writes:
>> Mika, can you tell me what main program and command you used to get these erro
>> rs?
>> It would help me to test changes to m3tk.
>>
>> On 04/26/2011 11:28 AM, Rodney M. Bates wrote:
>>> I just checked in a patch tp M3CExpValue.m3 in m3tk, in the head, which I be
>> lieve will fix this
>>> bug. I compiled it, but have not tested it, as I am sure Mika has this case
>> to retry
>>> more quickly than I can.
>>>
>>> On 04/19/2011 06:51 AM, Mika Nystrom wrote:
>>>> Hello m3devel,
>>>>
>>>> If anyone knows how to fix the following trivially, please go ahead.
>>>>
>>>> "/usr/local/cm3/pkg/m3core/src/C/64BITS/BasicCtypes.i3", line 18,45: type e
>> rror in arguments to binary operator
>>>> "/usr/local/cm3/pkg/m3core/src/C/64BITS/BasicCtypes.i3", line 18,25: bad nu
>> meric literal
>>>> "/usr/local/cm3/pkg/m3core/src/C/64BITS/BasicCtypes.i3", line 18,51: bad nu
>> meric literal
>>>>
>>>> (errors reported by m3tk).
>>>>
>>>> The offending line is:
>>>>
>>>> INTERFACE BasicCtypes;
>>>>
>>>> IMPORT Word, Long;
>>>>
>>>> TYPE
>>>> (* the four signed integer types *)
>>>> signed_char = [-16_7f-1 .. 16_7f];
>>>> short_int = [-16_7fff-1 .. 16_7fff];
>>>> int = [-16_7fffffff-1 .. 16_7fffffff];
>>>> long_int = [-16_7fffffffffffffff -1 .. 16_7fffffffffffffff ];
>>>> long_long = [-16_7fffffffffffffffL-1L .. 16_7fffffffffffffffL]; (** HERE **
>> )
>>>>
>>>> (* the four unsigned integer types *)
>>>> unsigned_char = [16_0 .. 16_ff];
>>>> unsigned_short_int = [16_0 .. 16_ffff];
>>>> unsigned_int = [16_0 .. 16_ffffffff];
>>>> unsigned_long_int = Word.T;
>>>> unsigned_long_long = Long.T;
>>>>
>>>> (* the three floating types *)
>>>> float = REAL;
>>>> double = LONGREAL;
>>>> long_double = EXTENDED;
>>>>
>>>> (* char *)
>>>> char = signed_char;
>>>>
>>>> END BasicCtypes.
>>>>
>>>> I'll look at it myself, but not immediately (no time). Workaround for now.
>>>>
>>>> Mika
>>>>
>>>
>



More information about the M3devel mailing list