3 ms·
Are you claiming that Module-2 is memory safe? What about: MODULE Boom VAR Foo : POINTER TO INTEGER; BEGIN Foo^ = 123; END Boom.
by bquinlan 10y ago
Are you claiming that Module-2 is memory safe?
What about:
MODULE Boom
VAR Foo : POINTER TO INTEGER;
BEGIN
Foo^ = 123;
END Boom.
- pjmlp 10y agoIf I remember correctly that is a compiler error, because Foo is not initialized, so no boom. But if you still want to get your point through and have a boom. MODULE Boom; IMPORT SYSTEM; VAR Foo : POINTER TO INTEGER; BEGIN Foo := SYSTEM.CAST(POINTER TO INTEGER, 43414); Foo^ := 123; END Boom. Notice the use of IMPORT SYSTEM and SYSTEM.CAST, explicit, easy to search for, and to forbid via compiler switch (no unsafe code).