[all-commits] [llvm/llvm-project] d590c8: [flang] Fix pimpl idiom for IntrinsicProcTable.

Michael Kruse via All-commits all-commits at lists.llvm.org
Fri Oct 23 22:28:21 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: d590c854303959bcaa78746a62b9a8f81583c111
      https://github.com/llvm/llvm-project/commit/d590c854303959bcaa78746a62b9a8f81583c111
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2020-10-24 (Sat, 24 Oct 2020)

  Changed paths:
    M flang/include/flang/Common/idioms.h
    M flang/include/flang/Evaluate/intrinsics.h
    M flang/lib/Evaluate/intrinsics.cpp

  Log Message:
  -----------
  [flang] Fix pimpl idiom for IntrinsicProcTable.

The class IntrinsicProcTable uses the pimpl idiom and manages its own pointer-to-implementation.  However, it violates the rule-of-five and does not implement a move-constructor or assignment-operator. Due to differences between compilers in implementation copy elision, these may or may not be used. Due to the missing user implementation for resource handling, using the results in runtime errors.

Fix my using `std::unique_ptr` instead of custom resource management.

Reviewed By: klausler

Differential Revision: https://reviews.llvm.org/D88794




More information about the All-commits mailing list