labath added inline comments.
================
Comment at: lldb/include/lldb/Utility/ReproducerInstrumentation.h:19
+#include "lldb/API/SBFile.h"
+
----------------
This is definitely not right. `Utility` should never include other lldb
libraries. I think this stuff should be defined in the API folder. Either in
the SBFile.cpp directly, or some additional cpp file.
================
Comment at: lldb/source/Utility/ReproducerInstrumentation.cpp:38
+template <> lldb::SBFile Deserializer::Deserialize<lldb::SBFile>() {
+ //@JDevlieghere I'm pretty sure this is not the right thing to
----------------
lawrence_danna wrote:
> @JDevlieghere advice please.
This is not totally surprising as SBDebugger::SetInputFile ignores the input
SBFile when it's in replay mode. However, it still doesn't seem like the right
fix. I am guessing that something special needs to happen in the record/replay
logic of the SBFile constructor, but off-hand, it's not fully clear to me what
would that be.
I think ideally, we'd have the reproducer shadowing that's currently done in
SBDebugger::SetInputFileHandle kick in earlier (in the SBFile constructor) so
that it covers all SBFiles, and not just those that later become the debugger
input handles, but I don't think it should be on you to make all of that work.
Maybe the appropriate fix would be to just make sure the SBFile constructor
creates empty objects and acknowledge that reproducers won't work for all
SBFiles until someone actually implements the appropriate support for them.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D68434/new/
https://reviews.llvm.org/D68434
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits