libdragon
debugcpp.h
1
6#ifndef __LIBDRAGON_DEBUGCPP_H
7#define __LIBDRAGON_DEBUGCPP_H
8
9#if defined(__cplusplus) && !defined(NDEBUG)
10 // We need to run some initialization code only in case libdragon is compiled from
11 // a C++ program. So we hook a few common initialization functions and run our code.
12 // C programs are not affected and the C++-related code will be unused and stripped by the linker.
14 void __debug_init_cpp(void);
15
16 #define console_init() ({ __debug_init_cpp(); console_init(); })
17 #define dfs_init(a) ({ __debug_init_cpp(); dfs_init(a);})
18 #define controller_init() ({ __debug_init_cpp(); controller_init(); })
19 #define timer_init() ({ __debug_init_cpp(); timer_init(); })
20 #define display_init(a,b,c,d,e) ({ __debug_init_cpp(); display_init(a,b,c,d,e); })
21 #define debug_init_isviewer() ({ __debug_init_cpp(); debug_init_isviewer(); })
22 #define debug_init_usblog() ({ __debug_init_cpp(); debug_init_usblog(); })
24#endif
25
26#endif
void __debug_init_cpp(void)
Initialize debug support for C++ programs.
Definition: debugcpp.cpp:37