[libfuzzer] Fix build error due to out-of-line definition of 'Fuzzer' does not match...
authorJie Fu <jiefu@tencent.com>
Fri, 10 Mar 2023 06:52:28 +0000 (14:52 +0800)
committerJie Fu <jiefu@tencent.com>
Fri, 10 Mar 2023 06:52:28 +0000 (14:52 +0800)
/data/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:138:9: error: out-of-line definition of 'Fuzzer' does not match any declaration in 'fuzzer::Fuzzer'
Fuzzer::Fuzzer(UserCallback CB, InputCorpus &Corpus, MutationDispatcher &MD,
        ^~~~~~
/data/llvm-project/compiler-rt/lib/fuzzer/FuzzerInternal.h:35:10: note: type of 4th parameter of member declaration does not match definition ('fuzzer::FuzzingOptions &' vs 'const fuzzer::FuzzingOptions &')
         FuzzingOptions &Options);
         ^
1 error generated.

compiler-rt/lib/fuzzer/FuzzerInternal.h

index e32ee37..8850470 100644 (file)
@@ -32,7 +32,7 @@ using namespace std::chrono;
 class Fuzzer final {
 public:
   Fuzzer(UserCallback CB, InputCorpus &Corpus, MutationDispatcher &MD,
-         FuzzingOptions &Options);
+         const FuzzingOptions &Options);
   ~Fuzzer() = delete;
   void Loop(std::vector<SizedFile> &CorporaFiles);
   void ReadAndExecuteSeedCorpora(std::vector<SizedFile> &CorporaFiles);