JDevlieghere added a comment. In D65185#1599262 <https://reviews.llvm.org/D65185#1599262>, @labath wrote:
> .def files can omit fields too: `#define BOOL_PROPERTY(name, global, default, > desc) PROPERTY(name, OptionValue::eTypeBoolean, global, default, nullptr, {}, > desc)`. Some sanity checking sounds like it could be useful, but I'm not > exactly sure what kind of checks you have in mind. Being able to change the > representation is nice, but I expect most of those changes would also be > achievable with the def files. More radical changes (like the variable thing > I mentioned) would probably require changes regardless of how the properties > are generated... I agree with you and I'm not opposed to def-files at all. I think tablegen and `.def` files have different trade-offs and while the latter could probably work for properties, I have the feeling that tablegen is a better fit. The things are mentioned before are just a few things that came to mind. To give an example of sanity checking: this isn't in the patch (yet) but with tablegen we can ensure that every option has either a default unsigned or string value. In the table you can't differentiate between a default `0` and an explicit default value of `0`. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D65185/new/ https://reviews.llvm.org/D65185 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits