Code: Select all
printf("minus one\n");
ots$fill(buf, -1, 0x04);
for(i = 0; i < sizeof(buf); i++) printf("%02X", buf[i]);
printf("\n");
printf("memset minus 1\n");
memset(buf, 0x05, -1);
for(i = 0; i < sizeof(buf); i++) printf("%02X", buf[i]);
printf("\n");
Code: Select all
IA64$ mcr []arne_v_3
01010101010101010101
02020202020202020202
03030303030303030303
minus one
03030303030303030303
memset minus 1
03030303030303030303
Code: Select all
X86VMS$ mcr []arne_v_3
01010101010101010101
02020202020202020202
03030303030303030303
minus one
03030303030303030303
memset minus 1
%SYSTEM-F-ACCVIO, access violation, reason mask=07, virtual address=000000007ACA2000, PC=FFFF830007A1B0BC, PS=0000001B
Improperly handled condition, image exit forced by last chance handler.
Signal arguments: Number = 0000000000000005
Name = 000000000000000C
0000000000000007
000000007ACA2000
FFFF830007A1B0BC
000000000000001B
Register dump:
RAX = 000000007ACA18C6 RDI = 000000007ACA18C6 RSI = 00000000FFFFFFFF
RDX = 0505050505050505 RCX = 0000000000000738 R8 = 0000000000023A30
R9 = 0000000000000000 RBX = 000000007FFCF898 RBP = 000000007ACA17E0
R10 = FFFFFFFFFFFFFFFE R11 = 0000000000000001 R12 = 000000007ACA19A8
R13 = 0000000000000000 R14 = 000000007AEBA170 R15 = 0000000000018090
RIP = FFFF830007A1B0BC RSP = 000000007ACA1788 SS = 000000000000001B
Interesting enough but somewhat nugatory activity.
After all this, here's hoping Development provide an explanation rather than just "fixed".