poelmanc created this revision. poelmanc added a reviewer: usaxena95. poelmanc added a project: clang-tools-extra. Herald added subscribers: kadircet, arphaman. poelmanc requested review of this revision. Herald added subscribers: cfe-commits, ilya-biryukov. Herald added a project: clang.
clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp fails to compile since `"CompletionModel.h"` is auto-generated from clang-tools-extra/clangd/quality/model/features.json, which was changed in https://reviews.llvm.org/D94697 to remove `setFilterLength` and `setIsForbidden`, rename `setFileProximityDistance` and `setSymbolScopeDistance`, and add `setNumNameInContext` and `setFractionNameInContext`. This patch removes calls to the two removed functions, updates calls to the two renamed functions, and adds calls to the two new functions. (`20` is an arbitrary choice for the `setNumNameInContext` argument.) It also changes the `FlipCoin` argument from float to double to silence lossy conversion warnings. Note: I don't use this tool but encountered the build errors and took a shot at fixing them. Please holler if there's another recommended solution. Thanks! Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D97620 Files: clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp Index: clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp =================================================================== --- clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp +++ clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp @@ -21,7 +21,7 @@ namespace clangd { namespace { std::vector<Example> generateRandomDataset(int NumExamples) { - auto FlipCoin = [&](float Probability) { + auto FlipCoin = [&](double Probability) { return rand() % 1000 <= Probability * 1000; }; auto RandInt = [&](int Max) { return rand() % Max; }; @@ -38,15 +38,15 @@ E.setIsImplementationDetail(FlipCoin(0.3)); // Boolean. E.setNumReferences(RandInt(10000)); // Can be large integer. E.setSymbolCategory(RandInt(10)); // 10 Symbol Category. - + E.setNumNameInContext(RandInt(20)); // 0 to Relevance.ContextWords->keys() + E.setFractionNameInContext(RandFloat(1.0)); // Float in range [0,1]. E.setIsNameInContext(FlipCoin(0.5)); // Boolean. - E.setIsForbidden(FlipCoin(0.1)); // Boolean. E.setIsInBaseClass(FlipCoin(0.3)); // Boolean. - E.setFileProximityDistance( + E.setFileProximityDistanceCost( FlipCoin(0.1) ? 999999 // Sometimes file distance is not available. : RandInt(20)); E.setSemaFileProximityScore(RandFloat(1)); // Float in range [0,1]. - E.setSymbolScopeDistance( + E.setSymbolScopeDistanceCost( FlipCoin(0.1) ? 999999 // Sometimes scope distance is not available. : RandInt(20)); E.setSemaSaysInScope(FlipCoin(0.5)); // Boolean. @@ -56,7 +56,6 @@ E.setHadContextType(FlipCoin(0.6)); // Boolean. E.setHadSymbolType(FlipCoin(0.6)); // Boolean. E.setTypeMatchesPreferred(FlipCoin(0.5)); // Boolean. - E.setFilterLength(RandInt(15)); Examples.push_back(E); } return Examples;
Index: clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp =================================================================== --- clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp +++ clang-tools-extra/clangd/benchmarks/CompletionModel/DecisionForestBenchmark.cpp @@ -21,7 +21,7 @@ namespace clangd { namespace { std::vector<Example> generateRandomDataset(int NumExamples) { - auto FlipCoin = [&](float Probability) { + auto FlipCoin = [&](double Probability) { return rand() % 1000 <= Probability * 1000; }; auto RandInt = [&](int Max) { return rand() % Max; }; @@ -38,15 +38,15 @@ E.setIsImplementationDetail(FlipCoin(0.3)); // Boolean. E.setNumReferences(RandInt(10000)); // Can be large integer. E.setSymbolCategory(RandInt(10)); // 10 Symbol Category. - + E.setNumNameInContext(RandInt(20)); // 0 to Relevance.ContextWords->keys() + E.setFractionNameInContext(RandFloat(1.0)); // Float in range [0,1]. E.setIsNameInContext(FlipCoin(0.5)); // Boolean. - E.setIsForbidden(FlipCoin(0.1)); // Boolean. E.setIsInBaseClass(FlipCoin(0.3)); // Boolean. - E.setFileProximityDistance( + E.setFileProximityDistanceCost( FlipCoin(0.1) ? 999999 // Sometimes file distance is not available. : RandInt(20)); E.setSemaFileProximityScore(RandFloat(1)); // Float in range [0,1]. - E.setSymbolScopeDistance( + E.setSymbolScopeDistanceCost( FlipCoin(0.1) ? 999999 // Sometimes scope distance is not available. : RandInt(20)); E.setSemaSaysInScope(FlipCoin(0.5)); // Boolean. @@ -56,7 +56,6 @@ E.setHadContextType(FlipCoin(0.6)); // Boolean. E.setHadSymbolType(FlipCoin(0.6)); // Boolean. E.setTypeMatchesPreferred(FlipCoin(0.5)); // Boolean. - E.setFilterLength(RandInt(15)); Examples.push_back(E); } return Examples;
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits