C preprocessor: Difference between revisions

Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content deleted Content added
mNo edit summary
mNo edit summary
Line 22: Line 22:
void alert(uint32 u);
void alert(uint32 u);
void alert_dec(uint32 u);
void alert_dec(uint32 u);

#define complain(msg) do {\
#define complain(msg) do {\
alert_decimal(__FILE__); \
alert_decimal(__FILE__); \
Line 30: Line 31:
alert("\n"); \
alert("\n"); \
} while(0)
} while(0)

void * malloc(size_t s) {
void * malloc(size_t s) {
complain((uint32)kernel_heap.first_free->addr);
complain((uint32)kernel_heap.first_free->addr);
Line 65: Line 67:


<<a: 14>>
<<a: 14>>
<<b: 20>> //line 16 wasn't run, fun(i) has returned true
<<b: 20>> //line 16 wasnt run, fun(i) has returned true
<<a: 16> //line 22 wasn't run, !is(i) has returned true
<<a: 16>> //line 22 wasnt run, !is(i) has returned true
<<a: 14>>
SYSFAIL: .... //after line 14 neither line 20 or 16 has been reached so the call fun(i) caused the page fault.