The following programs cause the 'SO Manager' dynamic area to increase
to 1MB, and then fail with an error.
This happens on both VRPC and RPCEmu.

*Type c.true
int main(void) {return 0;}

*gcc -static -std=gnu11 true.c -o true

*Type c.err_SOM
#include <stdio.h>
#include <stdlib.h>
int main(void) {
  for (int i=0;;++i) {
    if ((i&0x7F)==0) printf("%i\n",i);
    if (system("true")!=0) return 1; // Failure.
  }
  return 0;
}

*gcc -static -std=gnu11 err_SOM.c -o err_SOM

*err_SOM
0
128
256
384
512
640
768
There is not enough memory to perform this operation.
Quit any unwanted applications or see the RISC OS User Guide for ways to
maximise memory.
(Memory cannot be moved)

After this, any ELF commands give the same error message.

Regards
Duncan Moore

gcc (GCCSDK GCC 4.7.4 Release 6) 4.7.4
SharedUnixLibrary 1.16
VirtualRPC-AdjustSA RISC OS 4.39
RPCEmu 0.9.3 RISC OS 5.24


_______________________________________________
GCCSDK mailing list gcc@gccsdk.riscos.info
Bugzilla: http://www.riscos.info/bugzilla/index.cgi
List Info: http://www.riscos.info/mailman/listinfo/gcc
Main Page: http://www.riscos.info/index.php/GCCSDK

Reply via email to