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)24 int 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 &)41 void where_am_I::decl_usage(cxx_param_list &)
42 {
43 }
44 
interpret_parameters(cxx_param_list &)45 void 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 &)52 void where_am_I::begin_special_q(nfs_work const &)
53 {
54     return;
55 }
56 
57 /* }}} */
58