[Mlir-commits] [mlir] [mlir] Add support for parsing nested PassPipelineOptions (PR #101118)

Nikhil Kalra llvmlistbot at llvm.org
Tue Jul 30 18:30:25 PDT 2024


================
@@ -66,7 +66,15 @@ struct TestOptionsPass
     Option<Enum> enumOption{
         *this, "enum", llvm::cl::desc("Example enum option"),
         llvm::cl::values(clEnumValN(0, "zero", "Example zero value"),
-                         clEnumValN(1, "one", "Example one value"))};
+                         clEnumValN(1, "one", "Example one value"),
+                         clEnumValN(2, "two", "Example two value"))};
+
+    Options() = default;
+    Options(const Options &rhs) { *this = rhs; }
+    Options &operator=(const Options &rhs) {
+      copyOptionValuesFrom(rhs);
+      return *this;
+    }
----------------
nikalra wrote:

ListOption has an implicitly deleted copy constructor so we're forced to add this boilerplate to the derived classes.

https://github.com/llvm/llvm-project/pull/101118


More information about the Mlir-commits mailing list