C preprocessor: Difference between revisions

m
no edit summary
[unchecked revision][unchecked revision]
mNo edit summary
mNo edit summary
Line 52:
 
#define lnDbg do { alert("<<"); alert(__func__); alert(" : "); alert_decimal(__LINE__); alert(">>\n"); } while(0)
 
13 void a(int i) {
14 lnDbg;
15 if (fun(i)) bc(i) else a(i-1);
16 lnDbg;
17 a(i);
18}
19 void bc(int i) {
20 lnDbg;
21 if (!is(i)) return ;
22 lnDbg;
23 bc(i+1);
24 lnDbg;
25}
 
<<a: 14>>
<<bc: 20>> //line 16 wasnt run, fun(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.
 
Such macros may be stored in an shared.h file included by other compilation units.
 
 
Anonymous user