Add more out of line copy ctors for complex classes.

This patch adds the remaining copy constructors for complex classes.
After this patch, it should be possible to enable the heavy class copy
constructor checks by default.

R=thakis@chromium.org, dcheng@chromium.org
TBR=jam@chromium.org
BUG=436357
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1825273002

Cr-Original-Commit-Position: refs/heads/master@{#383131}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: bf0d713a72db33bdf6c51d65f009f73e822db3e0
diff --git a/tools/gn/bundle_file_rule.cc b/tools/gn/bundle_file_rule.cc
index 0f42c8f..7684196 100644
--- a/tools/gn/bundle_file_rule.cc
+++ b/tools/gn/bundle_file_rule.cc
@@ -14,6 +14,8 @@
                                const SubstitutionPattern& pattern)
     : sources_(sources), pattern_(pattern) {}
 
+BundleFileRule::BundleFileRule(const BundleFileRule& other) = default;
+
 BundleFileRule::~BundleFileRule() {}
 
 SourceFile BundleFileRule::ApplyPatternToSource(
diff --git a/tools/gn/bundle_file_rule.h b/tools/gn/bundle_file_rule.h
index 3669cd2..9fbf012 100644
--- a/tools/gn/bundle_file_rule.h
+++ b/tools/gn/bundle_file_rule.h
@@ -20,6 +20,7 @@
  public:
   BundleFileRule(const std::vector<SourceFile> sources,
                  const SubstitutionPattern& pattern);
+  BundleFileRule(const BundleFileRule& other);
   ~BundleFileRule();
 
   // Applies the substitution pattern to a source file, returning the result