/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
+#include <cstdint>
+
+#include <vector>
+
#include "src/mc/Frame.hpp"
#include "src/mc/ObjectInformation.hpp"
#include "src/mc/Variable.hpp"
return nullptr;
void *result = this->start_exec;
- if (this->start_rw != NULL && result > (void *) this->start_rw)
+ if (this->start_rw != nullptr && result > (void *) this->start_rw)
result = this->start_rw;
- if (this->start_ro != NULL && result > (void *) this->start_ro)
+ if (this->start_ro != nullptr && result > (void *) this->start_ro)
result = this->start_ro;
return result;
}
* Either we have found the correct function or we do not know
* any function corresponding to this instruction address.
* Only at the point do we derefernce the function pointer. */
- else if (ip < base[k].function->high_pc)
+ else if ((std::uint64_t) ip < base[k].function->range.end())
return base[k].function;
else
return nullptr;
* name.
*
* \param var_name Name of the local variable (or parameter to ignore)
- * \param subprogram_name Name of the subprogram fo ignore (NULL for any)
+ * \param subprogram_name Name of the subprogram fo ignore (nullptr for any)
* \param subprogram (possibly inlined) Subprogram of the scope
* \param scope Current scope
*/