fix test failure due to compilation order (see #973)
some tests rely on additional diagnostics code being linked in, which happens, when lib/format-util.hpp is included prior to the instantiation of lib::diff::Record rsp. lib::Variant. The reason why i opended this can of worms was to avoid includion of this formatting and diagnostics code into such basic headers as lib/variant.hpp or lib/diff/gen-node.hpp Now it turns out, that on some platforms the linker will use a later instantiation of lib::Variant::Buff<GenNode>::operator string in spite of a complete instantiation of this virtual function being available already in liblumierasupport.so But the real reason is that -- with this trickery -- we're violating the single definition rule, so we get what we deserved. TODO (Ticket #973): at a later point in development we have to re-assess, the precise impact of including lib/format-util.hpp into lib/diff/gen-node.hpp Right now I expect GenNode to be used pervasively, so I am reluctant to make that header too heavyweight.
This commit is contained in:
parent
15df21ceb5
commit
d68b881fab
2 changed files with 2 additions and 3 deletions
|
|
@ -96,9 +96,7 @@
|
|||
#include "lib/error.hpp"
|
||||
#include "lib/idi/entry-id.hpp"
|
||||
#include "lib/time/timevalue.hpp"
|
||||
//#include "lib/util.hpp"
|
||||
//#include "lib/format-string.hpp"
|
||||
//#include "lib/format-util.hpp"
|
||||
//#include "lib/format-util.hpp" ///////////////////////////////TICKET #973 : investigate the impact of this inclusion on code size
|
||||
#include "lib/diff/record.hpp"
|
||||
#include "lib/variant.hpp"
|
||||
#include "lib/util.hpp"
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
|
||||
#include "lib/test/run.hpp"
|
||||
#include "lib/format-util.hpp"
|
||||
#include "lib/diff/tree-diff-application.hpp"
|
||||
#include "lib/iter-adapter-stl.hpp"
|
||||
#include "lib/time/timevalue.hpp"
|
||||
|
|
|
|||
Loading…
Reference in a new issue