[PATCH] D153674: [dataflow] Disallow implicit copy of Environment, use fork() instead

Zixuan Wu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 27 22:52:53 PDT 2023


zixuan-wu added a comment.

Hi, there is a compiling error introduced recently as like following when files under clang/lib/Analysis/FlowSensitive/ are being compiled such as TypeErasedDataflowAnalysis.cpp and Transfer.cpp. Does anybody meet also?

>   from /usr/include/c++/7/functional:60,
>   from /iothome/wuzx/workspace/master-csky/clang/unittests/Analysis/FlowSensitive/TestingSupport.h:16,
>   from /iothome/wuzx/workspace/master-csky/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp:9:
>
> /usr/include/c++/7/optional:453:11: note: ‘std::optional<clang::dataflow::DataflowAnalysisState<clang::dataflow::NoopLattice> >::optional(const std::optional<clang::dataflow::DataflowAnalysisState<clang::dataflow::NoopLattice> >&)’ is implicitly deleted because the default definition would be ill-formed:
>
>   class optional
>         ^~~~~~~~
>
> /usr/include/c++/7/optional:453:11: error: use of deleted function ‘constexpr std::_Enable_copy_move<false, false, true, true, _Tag>::_Enable_copy_move(const std::_Enable_copy_move<false, false, true, true, _Tag>&) [with _Tag = std::optional<clang::dataflow::DataflowAnalysisState<clang::dataflow::NoopLattice> >]’
> In file included from /usr/include/c++/7/optional:43:0,
>
>   from /usr/include/c++/7/bits/node_handle.h:39,
>   from /usr/include/c++/7/bits/hashtable.h:37,
>   from /usr/include/c++/7/unordered_map:47,
>   from /usr/include/c++/7/functional:60,
>   from /iothome/wuzx/workspace/master-csky/clang/unittests/Analysis/FlowSensitive/TestingSupport.h:16,
>   from /iothome/wuzx/workspace/master-csky/clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp:9:
>
> /usr/include/c++/7/bits/enable_special_members.h:157:15: note: declared here
>
>   constexpr _Enable_copy_move(_Enable_copy_move const&) noexcept  = delete;
>             ^~~~~~~~~~~~~~~~~
>
> In file included from /usr/include/c++/7

The gcc version is gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D153674/new/

https://reviews.llvm.org/D153674



More information about the cfe-commits mailing list