David C W Brown

Results 85 comments of David C W Brown

I was surprised by this too. Your hex value 0E7000000H (decimal ‭3875536896‬) is greater than MAX(INTEGER) - the largest possible 4 byte integer value 2147483647 - because INTEGER is signed....

You're welcome. Ah, so Project Oberon can compile this, and it is because it has only one size of integer (and BYTE which isn't an issue because it is unsigned)....

I have a possible solution for you in the 'hexextend' branch. I found that the compiler behaviour needs to depend on what size the coded constant is targetted at. I...

Good points Oleg. So do I understand right?: in Component Pascal, * 'H' is a 32 bit hex constant corresponding to the INTEGER type * 'L' is a 64 bit...

Added dump of scanner variables for when this error hits and it shows that the reader is reporting eot from the start. Possibly an uninitialised variable in texts, readers or...

It's called 'CreateDirectory' on Windows. But my hunch is that we don't want to start down the path of providing a general system API in Platform beyond what is needed...

This issue exists for INTEGER and SHORTINT as well. It is also present in C/C++ compilers. It arises because program source of the form '-9223372036854775808' is defined by the language...

Because `long` is only 32 bits on LLP64 compilers. (I guess there are other scenarios, but the one that definitely affects us is building using the 64 bit windows conventions.)...

Thanks. Since LONGINT is still 32 bits on 32 bit builds, I'll remove the constant altogether and make OPS.Number handle both 32 and 64 bit scenarios correctly.

The Files module is specified by Oakwood and you can find the (admittedly sparse) detail on page 36 of: http://www.math.bas.bg/bantchev/place/oberon/oakwood-guidelines.pdf Files.ReadString and WriteString deal with Oberon formatted strings in files,...