@@ -342,36 +342,53 @@ def ccc_objcmt_migrate : Separate<["-"], "ccc-objcmt-migrate">,
342
342
InternalDriverOpt,
343
343
HelpText<"Apply modifications and produces temporary files to migrate to "
344
344
"modern ObjC syntax">;
345
+
345
346
def objcmt_migrate_literals : Flag<["-"], "objcmt-migrate-literals">, Flags<[CC1Option]>,
346
- HelpText<"Enable migration to modern ObjC literals">;
347
+ HelpText<"Enable migration to modern ObjC literals">,
348
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_Literals">;
347
349
def objcmt_migrate_subscripting : Flag<["-"], "objcmt-migrate-subscripting">, Flags<[CC1Option]>,
348
- HelpText<"Enable migration to modern ObjC subscripting">;
350
+ HelpText<"Enable migration to modern ObjC subscripting">,
351
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_Subscripting">;
349
352
def objcmt_migrate_property : Flag<["-"], "objcmt-migrate-property">, Flags<[CC1Option]>,
350
- HelpText<"Enable migration to modern ObjC property">;
353
+ HelpText<"Enable migration to modern ObjC property">,
354
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_Property">;
351
355
def objcmt_migrate_all : Flag<["-"], "objcmt-migrate-all">, Flags<[CC1Option]>,
352
- HelpText<"Enable migration to modern ObjC">;
356
+ HelpText<"Enable migration to modern ObjC">,
357
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_MigrateDecls">;
353
358
def objcmt_migrate_readonly_property : Flag<["-"], "objcmt-migrate-readonly-property">, Flags<[CC1Option]>,
354
- HelpText<"Enable migration to modern ObjC readonly property">;
359
+ HelpText<"Enable migration to modern ObjC readonly property">,
360
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_ReadonlyProperty">;
355
361
def objcmt_migrate_readwrite_property : Flag<["-"], "objcmt-migrate-readwrite-property">, Flags<[CC1Option]>,
356
- HelpText<"Enable migration to modern ObjC readwrite property">;
362
+ HelpText<"Enable migration to modern ObjC readwrite property">,
363
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_ReadwriteProperty">;
357
364
def objcmt_migrate_property_dot_syntax : Flag<["-"], "objcmt-migrate-property-dot-syntax">, Flags<[CC1Option]>,
358
- HelpText<"Enable migration of setter/getter messages to property-dot syntax">;
365
+ HelpText<"Enable migration of setter/getter messages to property-dot syntax">,
366
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_PropertyDotSyntax">;
359
367
def objcmt_migrate_annotation : Flag<["-"], "objcmt-migrate-annotation">, Flags<[CC1Option]>,
360
- HelpText<"Enable migration to property and method annotations">;
368
+ HelpText<"Enable migration to property and method annotations">,
369
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_Annotation">;
361
370
def objcmt_migrate_instancetype : Flag<["-"], "objcmt-migrate-instancetype">, Flags<[CC1Option]>,
362
- HelpText<"Enable migration to infer instancetype for method result type">;
371
+ HelpText<"Enable migration to infer instancetype for method result type">,
372
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_Instancetype">;
363
373
def objcmt_migrate_nsmacros : Flag<["-"], "objcmt-migrate-ns-macros">, Flags<[CC1Option]>,
364
- HelpText<"Enable migration to NS_ENUM/NS_OPTIONS macros">;
374
+ HelpText<"Enable migration to NS_ENUM/NS_OPTIONS macros">,
375
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_NsMacros">;
365
376
def objcmt_migrate_protocol_conformance : Flag<["-"], "objcmt-migrate-protocol-conformance">, Flags<[CC1Option]>,
366
- HelpText<"Enable migration to add protocol conformance on classes">;
377
+ HelpText<"Enable migration to add protocol conformance on classes">,
378
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_ProtocolConformance">;
367
379
def objcmt_atomic_property : Flag<["-"], "objcmt-atomic-property">, Flags<[CC1Option]>,
368
- HelpText<"Make migration to 'atomic' properties">;
380
+ HelpText<"Make migration to 'atomic' properties">,
381
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_AtomicProperty">;
369
382
def objcmt_returns_innerpointer_property : Flag<["-"], "objcmt-returns-innerpointer-property">, Flags<[CC1Option]>,
370
- HelpText<"Enable migration to annotate property with NS_RETURNS_INNER_POINTER">;
383
+ HelpText<"Enable migration to annotate property with NS_RETURNS_INNER_POINTER">,
384
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_ReturnsInnerPointerProperty">;
371
385
def objcmt_ns_nonatomic_iosonly: Flag<["-"], "objcmt-ns-nonatomic-iosonly">, Flags<[CC1Option]>,
372
- HelpText<"Enable migration to use NS_NONATOMIC_IOSONLY macro for setting property's 'atomic' attribute">;
386
+ HelpText<"Enable migration to use NS_NONATOMIC_IOSONLY macro for setting property's 'atomic' attribute">,
387
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_NsAtomicIOSOnlyProperty">;
373
388
def objcmt_migrate_designated_init : Flag<["-"], "objcmt-migrate-designated-init">, Flags<[CC1Option]>,
374
- HelpText<"Enable migration to infer NS_DESIGNATED_INITIALIZER for initializer methods">;
389
+ HelpText<"Enable migration to infer NS_DESIGNATED_INITIALIZER for initializer methods">,
390
+ MarshallingInfoBitfieldFlag<"FrontendOpts.ObjCMTAction", "FrontendOptions::ObjCMT_DesignatedInitializer">;
391
+
375
392
def objcmt_whitelist_dir_path: Joined<["-"], "objcmt-whitelist-dir-path=">, Flags<[CC1Option]>,
376
393
HelpText<"Only modify files with a filename contained in the provided directory path">;
377
394
// The misspelt "white-list" [sic] alias is due for removal.
@@ -383,7 +400,7 @@ def ccc_ : Joined<["-"], "ccc-">, Group<internal_Group>, Flags<[Unsupported]>;
383
400
384
401
// Standard Options
385
402
386
- def _HASH_HASH_HASH : Flag<["-"], "###">, Flags<[NoXarchOption, CoreOption]>,
403
+ def _HASH_HASH_HASH : Flag<["-"], "###">, Flags<[NoXarchOption, CoreOption, FlangOption ]>,
387
404
HelpText<"Print (but do not run) the commands to run for this compilation">;
388
405
def _DASH_DASH : Option<["--"], "", KIND_REMAINING_ARGS>,
389
406
Flags<[NoXarchOption, CoreOption]>;
@@ -608,7 +625,7 @@ def cl_no_signed_zeros : Flag<["-"], "cl-no-signed-zeros">, Group<opencl_Group>,
608
625
HelpText<"OpenCL only. Allow use of less precise no signed zeros computations in the generated binary.">,
609
626
MarshallingInfoFlag<"LangOpts->CLNoSignedZero">;
610
627
def cl_std_EQ : Joined<["-"], "cl-std=">, Group<opencl_Group>, Flags<[CC1Option]>,
611
- HelpText<"OpenCL language standard to compile for.">, Values<"cl,CL,cl1.1,CL1.1,cl1.2,CL1.2,cl2.0,CL2.0,cl3.0,CL3.0,clc++,CLC++">;
628
+ HelpText<"OpenCL language standard to compile for.">, Values<"cl,CL,cl1.0,CL1.0,cl1. 1,CL1.1,cl1.2,CL1.2,cl2.0,CL2.0,cl3.0,CL3.0,clc++,CLC++">;
612
629
def cl_denorms_are_zero : Flag<["-"], "cl-denorms-are-zero">, Group<opencl_Group>,
613
630
HelpText<"OpenCL only. Allow denormals to be flushed to zero.">;
614
631
def cl_fp32_correctly_rounded_divide_sqrt : Flag<["-"], "cl-fp32-correctly-rounded-divide-sqrt">, Group<opencl_Group>, Flags<[CC1Option]>,
@@ -1288,7 +1305,8 @@ defm rewrite_includes : OptInFFlag<"rewrite-includes", "">;
1288
1305
1289
1306
defm delete_null_pointer_checks : OptOutFFlag<"delete-null-pointer-checks",
1290
1307
"Treat usage of null pointers as undefined behavior (default)",
1291
- "Do not treat usage of null pointers as undefined behavior">;
1308
+ "Do not treat usage of null pointers as undefined behavior",
1309
+ "", [CoreOption]>;
1292
1310
1293
1311
def frewrite_map_file : Separate<["-"], "frewrite-map-file">,
1294
1312
Group<f_Group>,
0 commit comments