diff --git a/lib/PipeboxCommon/Python/_pipebox.cpp b/lib/PipeboxCommon/Python/_pipebox.cpp index f6cd11ffc..7f8273703 100644 --- a/lib/PipeboxCommon/Python/_pipebox.cpp +++ b/lib/PipeboxCommon/Python/_pipebox.cpp @@ -138,12 +138,12 @@ NB_MODULE(_pipebox, m) { static std::vector Args = { "" }; append(ArgVector, Args); - static std::vector Argv; - for (const std::string &String : Args) - Argv.push_back(String.c_str()); + static std::vector Argv; + for (std::string &String : Args) + Argv.push_back(&String[0]); static int Argc = Argv.size(); - static const char **ArgvPtr = Argv.data(); + static char **ArgvPtr = Argv.data(); // use a capsule to call the destructor when the Python module is unloaded m.attr("__init_revng__") = makeCapsule(Argc, ArgvPtr, ""); diff --git a/lib/PipelineC/PipelineC.cpp b/lib/PipelineC/PipelineC.cpp index 636430ff1..123799b36 100644 --- a/lib/PipelineC/PipelineC.cpp +++ b/lib/PipelineC/PipelineC.cpp @@ -150,8 +150,9 @@ static bool _rp_initialize(int argc, } revng_check(not InitRevngInstance.has_value()); + char **MutableArgv = const_cast(argv); InitRevngInstance.emplace(argc, - argv, + MutableArgv, "", llvm::ArrayRef()); diff --git a/tools/pypeline/run-analysis/Main.cpp b/tools/pypeline/run-analysis/Main.cpp index 4bc9a1771..a3f438924 100644 --- a/tools/pypeline/run-analysis/Main.cpp +++ b/tools/pypeline/run-analysis/Main.cpp @@ -46,7 +46,7 @@ static list Arguments(Positional, } // namespace Options -int main(int Argc, const char *Argv[]) { +int main(int Argc, char *Argv[]) { using namespace revng::pypeline; using namespace revng::pypeline::helpers::native; diff --git a/tools/pypeline/run-pipe/Main.cpp b/tools/pypeline/run-pipe/Main.cpp index 97728e084..a02ed1953 100644 --- a/tools/pypeline/run-pipe/Main.cpp +++ b/tools/pypeline/run-pipe/Main.cpp @@ -72,7 +72,7 @@ serializeDependencies(const revng::pypeline::ObjectDependencies &Dependencies, OS << "[]"; } -int main(int Argc, const char *Argv[]) { +int main(int Argc, char *Argv[]) { using namespace revng::pypeline; using namespace revng::pypeline::helpers::native;