Merge existing marhsalling info kinds and add some primitives to
express flag options that contribute to a bitfield.
Depends on D82574
Paths
| Differential D82860
Port ObjCMTAction to new option parsing system ClosedPublic Authored by jansvoboda11 on Jun 30 2020, 4:03 AM.
Details Summary Merge existing marhsalling info kinds and add some primitives to Depends on D82574
Diff Detail
Event TimelineHerald added projects: Restricted Project, Restricted Project. · View Herald TranscriptJun 30 2020, 4:03 AM dang added a child revision: D82874: Add diagnostic option backing field for -fansi-escape-codes.Jun 30 2020, 6:26 AM Comment Actions Ensure that mergeForwardValue can accept default values whose type doesn't quite match the associated keypath. dang removed a child revision: D82874: Add diagnostic option backing field for -fansi-escape-codes.Jul 9 2020, 11:28 PM dang added a child revision: D83071: Add support for options with two flags for controlling the same field..Jul 27 2020, 10:22 AM This revision is now accepted and ready to land.Aug 19 2020, 5:45 PM This revision is now accepted and ready to land.Nov 10 2020, 8:58 AM Closed by commit rG09248a5d25bb: [clang][cli] Port ObjCMTAction to new option parsing system (authored by jansvoboda11). · Explain WhyNov 11 2020, 4:03 AM This revision was automatically updated to reflect the committed changes. Comment Actions This seems to breaking clang-5 builds: utils/TableGen/CMakeFiles/llvm-tblgen.dir/OptParserEmitter.cpp.o: In function `llvm::EmitOptParser(llvm::RecordKeeper&, llvm::raw_ostream&)': (https://buildkite.com/mlir/mlir-core/builds/9273#ae602c1f-8c21-4ac6-90bb-99c9a3ae473e) Comment Actions
Jan is in Europe and may not see this until tomorrow; if you need this fixed sooner you might want to revert. Comment Actions Reverted in f917356f9ce0 ; I suspect a static constexpr in a class missing a definition out of class (required pre-c++17). Comment Actions Thank you for the heads-up. It seems like Clang 5 didn't like the usage of static constexpr member via an instance.
Revision Contents
Diff 304468 clang/include/clang/Driver/Options.td
clang/lib/Frontend/CompilerInvocation.cpp
llvm/include/llvm/Option/OptParser.td
llvm/unittests/Option/OptionMarshallingTest.cpp
llvm/unittests/Option/Opts.td
llvm/utils/TableGen/OptParserEmitter.cpp
|
If this kind of combination of normalizer, value merger and extractor happen again, I will make a mixin that helps set this up. Or do you reckon it is worth doing it now for readability.