1 #include "cado.h" // IWYU pragma: keep 2 3 #ifdef TRACE_K 4 #error "This file *must not* be compiled with TRACE_K defined" 5 #undef TRACE_K 6 #endif 7 8 /* This compilation units reacts to TRACK_CODE_PATH and uses macros 9 * such as WHERE_AM_I_UPDATE. 10 * This compilation unit _must_ produce different object files depending 11 * on the value of TRACK_CODE_PATH. 12 * The WHERE_AM_I_UPDATE macro itself is defined in las-where-am-i.hpp 13 */ 14 15 // IWYU pragma: no_include "las-where-am-i.hpp" 16 #include <cstdint> // for int64_t, uint64_t 17 #include <memory> // for unique_ptr 18 #include "las-where-am-i-proxy.hpp" // for where_am_I, where_am_I::pimpl_t 19 #include "las-where-am-i-prod.hpp" // for where_am_I::impl 20 struct cxx_param_list; // IWYU pragma: keep 21 class nfs_work; // IWYU pragma: keep 22 23 extern_trace_on_spot_ab(int64_t,uint64_t)24int extern_trace_on_spot_ab(int64_t, uint64_t) { 25 return 0; 26 } 27 28 /* The ctors / dtors in production code are trivial 29 30 where_am_I::where_am_I() : pimpl{ new impl{} } { } 31 where_am_I::~where_am_I() = default; 32 where_am_I::where_am_I(where_am_I const & x) : pimpl(new impl(*x.pimpl)) { 33 } 34 where_am_I & where_am_I::operator=(where_am_I const & x) { 35 *pimpl = *x.pimpl; 36 return *this; 37 } 38 39 */ 40 decl_usage(cxx_param_list &)41void where_am_I::decl_usage(cxx_param_list &) 42 { 43 } 44 interpret_parameters(cxx_param_list &)45void where_am_I::interpret_parameters(cxx_param_list &) 46 { 47 } 48 49 /* This fills all the trace_* structures from the main one. The main 50 * structure is the one for which a non-NULL pointer is passed. 51 */ begin_special_q(nfs_work const &)52void where_am_I::begin_special_q(nfs_work const &) 53 { 54 return; 55 } 56 57 /* }}} */ 58