#include <elfutils/libdw.h>
#include <elfutils/version.h>
-#include <boost/algorithm/string/predicate.hpp>
-
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(mc_dwarf, mc, "DWARF processing");
/** @brief The default DW_TAG_lower_bound for a given DW_AT_language.
member.name = name;
// Those base names are used by GCC and clang for virtual table pointers
// respectively ("__vptr$ClassName", "__vptr.ClassName"):
- if (boost::algorithm::starts_with(member.name, "__vptr$") ||
- boost::algorithm::starts_with(member.name, "__vptr."))
+ if (member.name.rfind("__vptr$", 0) == 0 || member.name.rfind("__vptr.", 0) == 0)
member.flags |= simgrid::mc::Member::VIRTUAL_POINTER_FLAG;
// A cleaner solution would be to check against the type:
// ---
#include <xbt/sysdep.h>
#include <xbt/virtu.h>
-#include <boost/algorithm/string/predicate.hpp>
#include <cstdio>
#include <cstdlib>
#include <sstream>
for (boost::stacktrace::frame const& frame : st) {
const std::string frame_name = frame.name();
if (print) {
- if (boost::starts_with(frame_name, "simgrid::xbt::MainFunction") ||
- boost::starts_with(frame_name, "simgrid::kernel::context::Context::operator()()"))
+ if (frame_name.rfind("simgrid::xbt::MainFunction", 0) == 0 ||
+ frame_name.rfind("simgrid::kernel::context::Context::operator()()", 0) == 0)
break;
ss << " -> " << frame_count++ << "# " << frame << "\n";
if (frame_name == "main")