
Demonstrates crash on memory allocation.
main.cpp@0:786b75c6aaca, 2011-03-29 (annotated)
- Committer:
- Kemp
- Date:
- Tue Mar 29 13:42:16 2011 +0000
- Revision:
- 0:786b75c6aaca
- Child:
- 1:883b8bc1f54a
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Kemp | 0:786b75c6aaca | 1 | #include "mbed.h" |
Kemp | 0:786b75c6aaca | 2 | |
Kemp | 0:786b75c6aaca | 3 | |
Kemp | 0:786b75c6aaca | 4 | Serial pc(USBTX, USBRX); |
Kemp | 0:786b75c6aaca | 5 | |
Kemp | 0:786b75c6aaca | 6 | extern "C" void HardFault_Handler() |
Kemp | 0:786b75c6aaca | 7 | { |
Kemp | 0:786b75c6aaca | 8 | pc.printf("Hard fault!\r\n"); |
Kemp | 0:786b75c6aaca | 9 | exit(1); |
Kemp | 0:786b75c6aaca | 10 | } |
Kemp | 0:786b75c6aaca | 11 | |
Kemp | 0:786b75c6aaca | 12 | |
Kemp | 0:786b75c6aaca | 13 | void fail() |
Kemp | 0:786b75c6aaca | 14 | { |
Kemp | 0:786b75c6aaca | 15 | pc.printf("Caught the failure\r\n"); |
Kemp | 0:786b75c6aaca | 16 | exit(1); |
Kemp | 0:786b75c6aaca | 17 | } |
Kemp | 0:786b75c6aaca | 18 | |
Kemp | 0:786b75c6aaca | 19 | |
Kemp | 0:786b75c6aaca | 20 | class Test |
Kemp | 0:786b75c6aaca | 21 | { |
Kemp | 0:786b75c6aaca | 22 | public: |
Kemp | 0:786b75c6aaca | 23 | int something; |
Kemp | 0:786b75c6aaca | 24 | char woot[28]; |
Kemp | 0:786b75c6aaca | 25 | }; |
Kemp | 0:786b75c6aaca | 26 | |
Kemp | 0:786b75c6aaca | 27 | |
Kemp | 0:786b75c6aaca | 28 | int main() { |
Kemp | 0:786b75c6aaca | 29 | Test *dummy; |
Kemp | 0:786b75c6aaca | 30 | int index = 0; |
Kemp | 0:786b75c6aaca | 31 | |
Kemp | 0:786b75c6aaca | 32 | while(1) { |
Kemp | 0:786b75c6aaca | 33 | dummy = new Test; |
Kemp | 0:786b75c6aaca | 34 | if (dummy == NULL) fail(); |
Kemp | 0:786b75c6aaca | 35 | pc.printf("%u\r\n", index); |
Kemp | 0:786b75c6aaca | 36 | ++index; |
Kemp | 0:786b75c6aaca | 37 | } |
Kemp | 0:786b75c6aaca | 38 | } |