gamesh411 added inline comments.
================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:151 + + using ValueConstraintPtr = std::shared_ptr<ValueConstraint>; + /// The complete list of constraints that defines a single branch. ---------------- martong wrote: > Note here, we need a copyable, polymorphic and default initializable type > (vector needs that). A raw pointer were good, however, we cannot default > initialize that. unique_ptr makes the Summary class non-copyable, therefore > not an option. > Releasing the copyablitly requirement would render the initialization of the > Summary map infeasible. > Perhaps we could come up with a [[ > https://www.youtube.com/watch?v=bIhUE5uUFOA | type erasure technique without > inheritance ]] once we consider the shared_ptr as restriction, but for now > that seems to be overkill. std::variant (with std::monostate for the default constructibility) would also be an option (if c++17 were supported). But this is not really an issue, i agree with that. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74973/new/ https://reviews.llvm.org/D74973 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits