1.. 2 ------------------------------------------------------------------- 3 NOTE: This file is automatically generated by running clang-tblgen 4 -gen-opt-docs. Do not edit this file by hand!! 5 ------------------------------------------------------------------- 6 7===================================== 8Clang command line argument reference 9===================================== 10.. contents:: 11 :local: 12 13Introduction 14============ 15 16This page lists the command line arguments currently supported by the 17GCC-compatible ``clang`` and ``clang++`` drivers. 18 19 20.. program:: clang 21.. option:: -B<dir>, --prefix <arg>, --prefix=<arg> 22 23Add <dir> to search path for binaries and object files used implicitly 24 25.. option:: -F<arg> 26 27Add directory to framework include search path 28 29.. option:: -ObjC 30 31Treat source input files as Objective-C inputs 32 33.. program:: clang1 34.. option:: -ObjC++ 35.. program:: clang 36 37Treat source input files as Objective-C++ inputs 38 39.. option:: -Qunused-arguments 40 41Don't emit warning for unused driver arguments 42 43.. option:: -Wa,<arg>,<arg2>... 44 45Pass the comma separated arguments in <arg> to the assembler 46 47.. option:: -Wlarge-by-value-copy=<arg> 48 49.. option:: -Xarch\_<arg1> <arg2> 50 51.. option:: -Xcuda-fatbinary <arg> 52 53Pass <arg> to fatbinary invocation 54 55.. option:: -Xcuda-ptxas <arg> 56 57Pass <arg> to the ptxas assembler 58 59.. option:: -Z<arg> 60 61.. option:: -a<arg>, --profile-blocks 62 63.. option:: -all\_load 64 65.. option:: -allowable\_client <arg> 66 67.. option:: --analyze 68 69Run the static analyzer 70 71.. option:: --analyze-auto 72 73.. option:: --analyzer-no-default-checks 74 75.. option:: --analyzer-output<arg> 76 77Static analyzer report output format (html\|plist\|plist-multi-file\|plist-html\|text). 78 79.. option:: -ansi, --ansi 80 81.. option:: -arch <arg> 82 83.. program:: clang1 84.. option:: -arch\_errors\_fatal 85.. program:: clang 86 87.. program:: clang2 88.. option:: -arch\_only <arg> 89.. program:: clang 90 91.. option:: -arcmt-migrate-emit-errors 92 93Emit ARC errors even if the migrator can fix them 94 95.. option:: -arcmt-migrate-report-output <arg> 96 97Output path for the plist report 98 99.. option:: -bind\_at\_load 100 101.. option:: -bundle 102 103.. program:: clang1 104.. option:: -bundle\_loader <arg> 105.. program:: clang 106 107.. option:: -client\_name<arg> 108 109.. option:: -compatibility\_version<arg> 110 111.. option:: --constant-cfstrings 112 113.. option:: -coverage, --coverage 114 115.. option:: --cuda-compile-host-device 116 117Compile CUDA code for both host and device (default). Has no effect on non-CUDA compilations. 118 119.. option:: --cuda-device-only 120 121Compile CUDA code for device only 122 123.. option:: --cuda-gpu-arch=<arg>, --no-cuda-gpu-arch=<arg> 124 125CUDA GPU architecture (e.g. sm\_35). May be specified more than once. 126 127.. option:: --cuda-host-only 128 129Compile CUDA code for host only. Has no effect on non-CUDA compilations. 130 131.. option:: --cuda-noopt-device-debug, --no-cuda-noopt-device-debug 132 133Enable device-side debug info generation. Disables ptxas optimizations. 134 135.. option:: -current\_version<arg> 136 137.. option:: -dead\_strip 138 139.. option:: -dependency-dot <arg> 140 141Filename to write DOT-formatted header dependencies to 142 143.. option:: -dependency-file <arg> 144 145Filename (or -) to write dependency output to 146 147.. option:: -dumpmachine 148 149.. option:: -dumpversion 150 151.. option:: --dyld-prefix=<arg>, --dyld-prefix <arg> 152 153.. option:: -dylib\_file <arg> 154 155.. option:: -dylinker 156 157.. program:: clang1 158.. option:: -dylinker\_install\_name<arg> 159.. program:: clang 160 161.. option:: -dynamic 162 163.. option:: -dynamiclib 164 165.. option:: -emit-ast 166 167Emit Clang AST files for source inputs 168 169.. option:: -exported\_symbols\_list <arg> 170 171.. option:: -faligned-new=<arg> 172 173.. option:: -fcuda-approx-transcendentals, -fno-cuda-approx-transcendentals 174 175Use approximate transcendental functions 176 177.. option:: -fcuda-flush-denormals-to-zero, -fno-cuda-flush-denormals-to-zero 178 179Flush denormal floating point values to zero in CUDA device mode. 180 181.. option:: -fheinous-gnu-extensions 182 183.. option:: -flat\_namespace 184 185.. option:: -fopenmp-targets=<arg1>,<arg2>... 186 187Specify comma-separated list of triples OpenMP offloading targets to be supported 188 189.. option:: -force\_cpusubtype\_ALL 190 191.. program:: clang1 192.. option:: -force\_flat\_namespace 193.. program:: clang 194 195.. program:: clang2 196.. option:: -force\_load <arg> 197.. program:: clang 198 199.. option:: -framework <arg> 200 201.. option:: -frtlib-add-rpath, -fno-rtlib-add-rpath 202 203Add -rpath with architecture-specific resource directory to the linker flags 204 205.. option:: --gcc-toolchain=<arg>, -gcc-toolchain <arg> 206 207Use the gcc toolchain at the given directory 208 209.. option:: -gcodeview 210 211Generate CodeView debug information 212 213.. option:: -headerpad\_max\_install\_names<arg> 214 215.. option:: -help, --help 216 217Display available options 218 219.. option:: --help-hidden 220 221.. option:: -image\_base <arg> 222 223.. option:: -index-header-map 224 225Make the next included directory (-I or -F) an indexer header map 226 227.. option:: -init <arg> 228 229.. option:: -install\_name <arg> 230 231.. option:: -keep\_private\_externs 232 233.. option:: -lazy\_framework <arg> 234 235.. program:: clang1 236.. option:: -lazy\_library <arg> 237.. program:: clang 238 239.. option:: -mbig-endian, -EB 240 241.. option:: --migrate 242 243Run the migrator 244 245.. option:: -mios-simulator-version-min=<arg>, -miphonesimulator-version-min=<arg> 246 247.. option:: -mlinker-version=<arg> 248 249.. option:: -mlittle-endian, -EL 250 251.. option:: -mllvm <arg> 252 253Additional arguments to forward to LLVM's option processing 254 255.. option:: -module-dependency-dir <arg> 256 257Directory to dump module dependencies to 258 259.. option:: -mtvos-simulator-version-min=<arg>, -mappletvsimulator-version-min=<arg> 260 261.. option:: -multi\_module 262 263.. option:: -multiply\_defined <arg> 264 265.. program:: clang1 266.. option:: -multiply\_defined\_unused <arg> 267.. program:: clang 268 269.. option:: -mwatchos-simulator-version-min=<arg>, -mwatchsimulator-version-min=<arg> 270 271.. option:: --no-cuda-version-check 272 273Don't error out if the detected version of the CUDA install is too low for the requested CUDA gpu architecture. 274 275.. option:: -no-integrated-cpp, --no-integrated-cpp 276 277.. option:: -no\_dead\_strip\_inits\_and\_terms 278 279.. option:: -nobuiltininc 280 281Disable builtin #include directories 282 283.. option:: -nocudainc 284 285.. option:: -nocudalib 286 287.. option:: -nodefaultlibs 288 289.. option:: -nofixprebinding 290 291.. option:: -nolibc 292 293.. option:: -nomultidefs 294 295.. option:: -nopie 296 297.. option:: -noprebind 298 299.. option:: -noseglinkedit 300 301.. option:: -nostartfiles 302 303.. option:: -nostdinc, --no-standard-includes 304 305.. program:: clang1 306.. option:: -nostdinc++ 307.. program:: clang 308 309Disable standard #include directories for the C++ standard library 310 311.. option:: -nostdlib, --no-standard-libraries 312 313.. option:: -nostdlibinc 314 315.. option:: -o<file>, --output <arg>, --output=<arg> 316 317Write output to <file> 318 319.. option:: -objcmt-atomic-property 320 321Make migration to 'atomic' properties 322 323.. option:: -objcmt-migrate-all 324 325Enable migration to modern ObjC 326 327.. option:: -objcmt-migrate-annotation 328 329Enable migration to property and method annotations 330 331.. option:: -objcmt-migrate-designated-init 332 333Enable migration to infer NS\_DESIGNATED\_INITIALIZER for initializer methods 334 335.. option:: -objcmt-migrate-instancetype 336 337Enable migration to infer instancetype for method result type 338 339.. option:: -objcmt-migrate-literals 340 341Enable migration to modern ObjC literals 342 343.. option:: -objcmt-migrate-ns-macros 344 345Enable migration to NS\_ENUM/NS\_OPTIONS macros 346 347.. option:: -objcmt-migrate-property 348 349Enable migration to modern ObjC property 350 351.. option:: -objcmt-migrate-property-dot-syntax 352 353Enable migration of setter/getter messages to property-dot syntax 354 355.. option:: -objcmt-migrate-protocol-conformance 356 357Enable migration to add protocol conformance on classes 358 359.. option:: -objcmt-migrate-readonly-property 360 361Enable migration to modern ObjC readonly property 362 363.. option:: -objcmt-migrate-readwrite-property 364 365Enable migration to modern ObjC readwrite property 366 367.. option:: -objcmt-migrate-subscripting 368 369Enable migration to modern ObjC subscripting 370 371.. option:: -objcmt-ns-nonatomic-iosonly 372 373Enable migration to use NS\_NONATOMIC\_IOSONLY macro for setting property's 'atomic' attribute 374 375.. option:: -objcmt-returns-innerpointer-property 376 377Enable migration to annotate property with NS\_RETURNS\_INNER\_POINTER 378 379.. option:: -objcmt-whitelist-dir-path=<arg>, -objcmt-white-list-dir-path=<arg> 380 381Only modify files with a filename contained in the provided directory path 382 383.. option:: -object 384 385.. option:: -p, --profile 386 387.. option:: -pagezero\_size<arg> 388 389.. option:: -pg 390 391Enable mcount instrumentation 392 393.. option:: -pie 394 395.. option:: -pipe, --pipe 396 397Use pipes between commands, when possible 398 399.. option:: -prebind 400 401.. program:: clang1 402.. option:: -prebind\_all\_twolevel\_modules 403.. program:: clang 404 405.. option:: -preload 406 407.. option:: --print-diagnostic-categories 408 409.. option:: -print-file-name=<file>, --print-file-name=<file>, --print-file-name <arg> 410 411Print the full library path of <file> 412 413.. option:: -print-ivar-layout 414 415Enable Objective-C Ivar layout bitmap print trace 416 417.. option:: -print-libgcc-file-name, --print-libgcc-file-name 418 419Print the library path for the currently used compiler runtime library ("libgcc.a" or "libclang\_rt.builtins.\*.a") 420 421.. option:: -print-multi-directory, --print-multi-directory 422 423.. option:: -print-multi-lib, --print-multi-lib 424 425.. option:: -print-prog-name=<name>, --print-prog-name=<name>, --print-prog-name <arg> 426 427Print the full program path of <name> 428 429.. option:: -print-resource-dir, --print-resource-dir 430 431Print the resource directory pathname 432 433.. option:: -print-search-dirs, --print-search-dirs 434 435Print the paths used for finding libraries and programs 436 437.. option:: -private\_bundle 438 439.. option:: -pthread, -no-pthread 440 441Support POSIX threads in generated code 442 443.. option:: -pthreads 444 445.. option:: -rdynamic 446 447.. option:: -read\_only\_relocs <arg> 448 449.. option:: -relocatable-pch, --relocatable-pch 450 451Whether to build a relocatable precompiled header 452 453.. option:: -remap 454 455.. option:: -rewrite-legacy-objc 456 457Rewrite Legacy Objective-C source to C++ 458 459.. option:: -rtlib=<arg>, --rtlib=<arg>, --rtlib <arg> 460 461Compiler runtime library to use 462 463.. option:: -save-stats=<arg>, --save-stats=<arg>, -save-stats (equivalent to -save-stats=cwd), --save-stats (equivalent to -save-stats=cwd) 464 465Save llvm statistics. 466 467.. option:: -save-temps=<arg>, --save-temps=<arg>, -save-temps (equivalent to -save-temps=cwd), --save-temps (equivalent to -save-temps=cwd) 468 469Save intermediate compilation results. 470 471.. option:: -sectalign <arg1> <arg2> <arg3> 472 473.. option:: -sectcreate <arg1> <arg2> <arg3> 474 475.. option:: -sectobjectsymbols <arg1> <arg2> 476 477.. option:: -sectorder <arg1> <arg2> <arg3> 478 479.. option:: -seg1addr<arg> 480 481.. option:: -seg\_addr\_table <arg> 482 483.. program:: clang1 484.. option:: -seg\_addr\_table\_filename <arg> 485.. program:: clang 486 487.. option:: -segaddr <arg1> <arg2> 488 489.. option:: -segcreate <arg1> <arg2> <arg3> 490 491.. option:: -seglinkedit 492 493.. option:: -segprot <arg1> <arg2> <arg3> 494 495.. option:: -segs\_read\_<arg> 496 497.. program:: clang1 498.. option:: -segs\_read\_only\_addr <arg> 499.. program:: clang 500 501.. program:: clang2 502.. option:: -segs\_read\_write\_addr <arg> 503.. program:: clang 504 505.. option:: -serialize-diagnostics <arg>, --serialize-diagnostics <arg> 506 507Serialize compiler diagnostics to a file 508 509.. option:: -shared, --shared 510 511.. option:: -shared-libasan 512 513.. option:: -shared-libgcc 514 515.. option:: -single\_module 516 517.. option:: -specs=<arg>, --specs=<arg> 518 519.. option:: -static, --static 520 521.. option:: -static-libgcc 522 523.. option:: -static-libstdc++ 524 525.. option:: -std-default=<arg> 526 527.. option:: -stdlib=<arg>, --stdlib=<arg>, --stdlib <arg> 528 529C++ standard library to use 530 531.. option:: -sub\_library<arg> 532 533.. program:: clang1 534.. option:: -sub\_umbrella<arg> 535.. program:: clang 536 537.. option:: --sysroot=<arg>, --sysroot <arg> 538 539.. option:: --target-help 540 541.. option:: --target=<arg>, -target <arg> 542 543Generate code for the given target 544 545.. option:: -time 546 547Time individual commands 548 549.. option:: -traditional, --traditional 550 551.. option:: -traditional-cpp, --traditional-cpp 552 553Enable some traditional CPP emulation 554 555.. option:: -twolevel\_namespace 556 557.. program:: clang1 558.. option:: -twolevel\_namespace\_hints 559.. program:: clang 560 561.. option:: -umbrella <arg> 562 563.. option:: -unexported\_symbols\_list <arg> 564 565.. option:: -v, --verbose 566 567Show commands to run and use verbose output 568 569.. option:: --verify-debug-info 570 571Verify the binary representation of debug output 572 573.. option:: --version 574 575.. option:: -w, --no-warnings 576 577Suppress all warnings 578 579.. option:: -weak-l<arg> 580 581.. option:: -weak\_framework <arg> 582 583.. program:: clang1 584.. option:: -weak\_library <arg> 585.. program:: clang 586 587.. program:: clang2 588.. option:: -weak\_reference\_mismatches <arg> 589.. program:: clang 590 591.. option:: -whatsloaded 592 593.. option:: -whyload 594 595.. option:: -working-directory<arg>, -working-directory=<arg> 596 597Resolve file paths relative to the specified directory 598 599.. option:: -x<language>, --language <arg>, --language=<arg> 600 601Treat subsequent input files as having type <language> 602 603.. option:: -y<arg> 604 605Actions 606======= 607The action to perform on the input. 608 609.. option:: -E, --preprocess 610 611Only run the preprocessor 612 613.. option:: -S, --assemble 614 615Only run preprocess and compilation steps 616 617.. option:: -c, --compile 618 619Only run preprocess, compile, and assemble steps 620 621.. option:: -emit-llvm 622 623Use the LLVM representation for assembler and object files 624 625.. option:: -fsyntax-only 626 627.. option:: -module-file-info 628 629Provide information about a particular module file 630 631.. option:: --precompile 632 633Only precompile the input 634 635.. option:: -rewrite-objc 636 637Rewrite Objective-C source to C++ 638 639.. option:: -verify-pch 640 641Load and verify that a pre-compiled header file is not stale 642 643Compilation flags 644================= 645 646Flags controlling the behavior of Clang during compilation. These flags have 647no effect during actions that do not perform compilation. 648 649.. option:: -Xassembler <arg> 650 651Pass <arg> to the assembler 652 653.. option:: -Xclang <arg> 654 655Pass <arg> to the clang compiler 656 657.. option:: -fcomment-block-commands=<arg>,<arg2>... 658 659Treat each comma separated argument in <arg> as a documentation comment block command 660 661.. option:: -fdeclspec, -fno-declspec 662 663Allow \_\_declspec as a keyword 664 665.. option:: -fdepfile-entry=<arg> 666 667.. option:: -fdiagnostics-fixit-info, -fno-diagnostics-fixit-info 668 669.. option:: -fdiagnostics-format=<arg> 670 671.. option:: -fdiagnostics-parseable-fixits 672 673Print fix-its in machine parseable form 674 675.. option:: -fdiagnostics-print-source-range-info 676 677Print source range spans in numeric form 678 679.. option:: -fdiagnostics-show-category=<arg> 680 681.. option:: -fexperimental-new-pass-manager, -fno-experimental-new-pass-manager 682 683Enables an experimental new pass manager in LLVM. 684 685.. option:: -finline-functions, -fno-inline-functions 686 687Inline suitable functions 688 689.. option:: -finline-hint-functions 690 691Inline functions which are (explicitly or implicitly) marked inline 692 693.. option:: -fno-crash-diagnostics 694 695Disable auto-generation of preprocessed source files and a script for reproduction during a clang crash 696 697.. option:: -fno-sanitize-blacklist 698 699Don't use blacklist file for sanitizers 700 701.. option:: -fparse-all-comments 702 703.. option:: -fsanitize-address-field-padding=<arg> 704 705Level of field padding for AddressSanitizer 706 707.. option:: -fsanitize-address-use-after-scope, -fno-sanitize-address-use-after-scope 708 709Enable use-after-scope detection in AddressSanitizer 710 711.. option:: -fsanitize-blacklist=<arg> 712 713Path to blacklist file for sanitizers 714 715.. option:: -fsanitize-cfi-cross-dso, -fno-sanitize-cfi-cross-dso 716 717Enable control flow integrity (CFI) checks for cross-DSO calls. 718 719.. option:: -fsanitize-coverage=<arg1>,<arg2>..., -fno-sanitize-coverage=<arg1>,<arg2>... 720 721Specify the type of coverage instrumentation for Sanitizers 722 723.. option:: -fsanitize-link-c++-runtime 724 725.. option:: -fsanitize-memory-track-origins, -fno-sanitize-memory-track-origins 726 727Enable origins tracking in MemorySanitizer 728 729.. program:: clang1 730.. option:: -fsanitize-memory-track-origins=<arg> 731.. program:: clang 732 733Enable origins tracking in MemorySanitizer 734 735.. option:: -fsanitize-memory-use-after-dtor 736 737Enable use-after-destroy detection in MemorySanitizer 738 739.. option:: -fsanitize-recover, -fno-sanitize-recover 740 741.. program:: clang1 742.. option:: -fsanitize-recover=<arg1>,<arg2>..., -fno-sanitize-recover=<arg1>,<arg2>... 743.. program:: clang 744 745Enable recovery for specified sanitizers 746 747.. option:: -fsanitize-stats, -fno-sanitize-stats 748 749Enable sanitizer statistics gathering. 750 751.. option:: -fsanitize-thread-atomics, -fno-sanitize-thread-atomics 752 753Enable atomic operations instrumentation in ThreadSanitizer (default) 754 755.. option:: -fsanitize-thread-func-entry-exit, -fno-sanitize-thread-func-entry-exit 756 757Enable function entry/exit instrumentation in ThreadSanitizer (default) 758 759.. option:: -fsanitize-thread-memory-access, -fno-sanitize-thread-memory-access 760 761Enable memory access instrumentation in ThreadSanitizer (default) 762 763.. option:: -fsanitize-trap=<arg1>,<arg2>..., -fno-sanitize-trap=<arg1>,<arg2>... 764 765Enable trapping for specified sanitizers 766 767.. option:: -fsanitize-undefined-strip-path-components=<number> 768 769Strip (or keep only, if negative) a given number of path components when emitting check metadata. 770 771.. option:: -fsanitize-undefined-trap-on-error, -fno-sanitize-undefined-trap-on-error 772 773.. option:: -fsanitize=<check>,<arg2>..., -fno-sanitize=<arg1>,<arg2>... 774 775Turn on runtime checks for various forms of undefined or suspicious behavior. See user manual for available checks 776 777.. option:: --param <arg>, --param=<arg> 778 779.. option:: -std=<arg>, --std=<arg>, --std <arg> 780 781Language standard to compile for 782 783Preprocessor flags 784~~~~~~~~~~~~~~~~~~ 785 786Flags controlling the behavior of the Clang preprocessor. 787 788.. option:: -C, --comments 789 790Include comments in preprocessed output 791 792.. option:: -CC, --comments-in-macros 793 794Include comments from within macros in preprocessed output 795 796.. option:: -D<macro>=<value>, --define-macro <arg>, --define-macro=<arg> 797 798Define <macro> to <value> (or 1 if <value> omitted) 799 800.. option:: -H, --trace-includes 801 802Show header includes and nesting depth 803 804.. option:: -P, --no-line-commands 805 806Disable linemarker output in -E mode 807 808.. option:: -U<macro>, --undefine-macro <arg>, --undefine-macro=<arg> 809 810Undefine macro <macro> 811 812.. option:: -Wp,<arg>,<arg2>... 813 814Pass the comma separated arguments in <arg> to the preprocessor 815 816.. option:: -Xpreprocessor <arg> 817 818Pass <arg> to the preprocessor 819 820Include path management 821----------------------- 822 823Flags controlling how ``#include``\s are resolved to files. 824 825.. option:: -I<dir>, --include-directory <arg>, --include-directory=<arg> 826 827Add directory to include search path 828 829.. option:: -I-, --include-barrier 830 831Restrict all prior -I flags to double-quoted inclusion and remove current directory from include path 832 833.. option:: --cuda-path=<arg> 834 835CUDA installation path 836 837.. option:: -cxx-isystem<directory> 838 839Add directory to the C++ SYSTEM include search path 840 841.. option:: -fbuild-session-file=<file> 842 843Use the last modification time of <file> as the build session timestamp 844 845.. option:: -fbuild-session-timestamp=<time since Epoch in seconds> 846 847Time when the current build session started 848 849.. option:: -fmodules-cache-path=<directory> 850 851Specify the module cache path 852 853.. option:: -fmodules-disable-diagnostic-validation 854 855Disable validation of the diagnostic options when loading the module 856 857.. option:: -fmodules-prune-after=<seconds> 858 859Specify the interval (in seconds) after which a module file will be considered unused 860 861.. option:: -fmodules-prune-interval=<seconds> 862 863Specify the interval (in seconds) between attempts to prune the module cache 864 865.. option:: -fmodules-user-build-path <directory> 866 867Specify the module user build path 868 869.. option:: -fmodules-validate-once-per-build-session 870 871Don't verify input files for the modules if the module has been successfully validated or loaded during this build session 872 873.. option:: -fmodules-validate-system-headers 874 875Validate the system headers that a module depends on when loading the module 876 877.. option:: -fprebuilt-module-path=<directory> 878 879Specify the prebuilt module path 880 881.. option:: -i<arg> 882 883.. option:: -idirafter<arg>, --include-directory-after <arg>, --include-directory-after=<arg> 884 885Add directory to AFTER include search path 886 887.. option:: -iframework<arg> 888 889Add directory to SYSTEM framework search path 890 891.. option:: -iframeworkwithsysroot<directory> 892 893Add directory to SYSTEM framework search path, absolute paths are relative to -isysroot 894 895.. option:: -imacros<file>, --imacros<file>, --imacros=<arg> 896 897Include macros from file before parsing 898 899.. option:: -include<file>, --include<file>, --include=<arg> 900 901Include file before parsing 902 903.. option:: -include-pch <file> 904 905Include precompiled header file 906 907.. option:: -iprefix<dir>, --include-prefix <arg>, --include-prefix=<arg> 908 909Set the -iwithprefix/-iwithprefixbefore prefix 910 911.. option:: -iquote<directory> 912 913Add directory to QUOTE include search path 914 915.. option:: -isysroot<dir> 916 917Set the system root directory (usually /) 918 919.. option:: -isystem<directory> 920 921Add directory to SYSTEM include search path 922 923.. option:: -isystem-after<directory> 924 925Add directory to end of the SYSTEM include search path 926 927.. option:: -ivfsoverlay<arg> 928 929Overlay the virtual filesystem described by file over the real file system 930 931.. option:: -iwithprefix<dir>, --include-with-prefix <arg>, --include-with-prefix-after <arg>, --include-with-prefix-after=<arg>, --include-with-prefix=<arg> 932 933Set directory to SYSTEM include search path with prefix 934 935.. option:: -iwithprefixbefore<dir>, --include-with-prefix-before <arg>, --include-with-prefix-before=<arg> 936 937Set directory to include search path with prefix 938 939.. option:: -iwithsysroot<directory> 940 941Add directory to SYSTEM include search path, absolute paths are relative to -isysroot 942 943.. option:: --ptxas-path=<arg> 944 945Path to ptxas (used for compiling CUDA code) 946 947.. option:: --system-header-prefix=<prefix>, --no-system-header-prefix=<prefix>, --system-header-prefix <arg> 948 949Treat all #include paths starting with <prefix> as including a system header. 950 951Dependency file generation 952-------------------------- 953 954Flags controlling generation of a dependency file for ``make``-like build 955systems. 956 957.. option:: -M, --dependencies 958 959Like -MD, but also implies -E and writes to stdout by default 960 961.. option:: -MD, --write-dependencies 962 963Write a depfile containing user and system headers 964 965.. option:: -MF<file> 966 967Write depfile output from -MMD, -MD, -MM, or -M to <file> 968 969.. option:: -MG, --print-missing-file-dependencies 970 971Add missing headers to depfile 972 973.. option:: -MJ<arg> 974 975Write a compilation database entry per input 976 977.. option:: -MM, --user-dependencies 978 979Like -MMD, but also implies -E and writes to stdout by default 980 981.. option:: -MMD, --write-user-dependencies 982 983Write a depfile containing user headers 984 985.. option:: -MP 986 987Create phony target for each dependency (other than main file) 988 989.. option:: -MQ<arg> 990 991Specify name of main file output to quote in depfile 992 993.. option:: -MT<arg> 994 995Specify name of main file output in depfile 996 997.. option:: -MV 998 999Use NMake/Jom format for the depfile 1000 1001Dumping preprocessor state 1002-------------------------- 1003 1004Flags allowing the state of the preprocessor to be dumped in various ways. 1005 1006.. option:: -d 1007 1008.. program:: clang1 1009.. option:: -d<arg> 1010.. program:: clang 1011 1012.. option:: -dA 1013 1014.. option:: -dD 1015 1016Print macro definitions in -E mode in addition to normal output 1017 1018.. option:: -dI 1019 1020Print include directives in -E mode in addition to normal output 1021 1022.. option:: -dM 1023 1024Print macro definitions in -E mode instead of normal output 1025 1026Diagnostic flags 1027~~~~~~~~~~~~~~~~ 1028 1029Flags controlling which warnings, errors, and remarks Clang will generate. 1030See the :doc:`full list of warning and remark flags <DiagnosticsReference>`. 1031 1032.. option:: -R<remark> 1033 1034Enable the specified remark 1035 1036.. option:: -Rpass-analysis=<arg> 1037 1038Report transformation analysis from optimization passes whose name matches the given POSIX regular expression 1039 1040.. option:: -Rpass-missed=<arg> 1041 1042Report missed transformations by optimization passes whose name matches the given POSIX regular expression 1043 1044.. option:: -Rpass=<arg> 1045 1046Report transformations performed by optimization passes whose name matches the given POSIX regular expression 1047 1048.. option:: -W<warning>, --extra-warnings, --warn-<arg>, --warn-=<arg> 1049 1050Enable the specified warning 1051 1052.. option:: -Wdeprecated, -Wno-deprecated 1053 1054Enable warnings for deprecated constructs and define \_\_DEPRECATED 1055 1056.. option:: -Wnonportable-cfstrings<arg>, -Wno-nonportable-cfstrings<arg> 1057 1058Target-independent compilation options 1059~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1060.. option:: -Wframe-larger-than=<arg> 1061 1062.. option:: -fPIC, -fno-PIC 1063 1064.. option:: -fPIE, -fno-PIE 1065 1066.. option:: -faccess-control, -fno-access-control 1067 1068.. program:: clang1 1069.. option:: -faligned-allocation, -faligned-new, -fno-aligned-allocation 1070.. program:: clang 1071 1072Enable C++17 aligned allocation functions 1073 1074.. option:: -fallow-unsupported 1075 1076.. option:: -faltivec, -fno-altivec 1077 1078.. option:: -fansi-escape-codes 1079 1080Use ANSI escape codes for diagnostics 1081 1082.. option:: -fapple-kext, -findirect-virtual-calls, -fterminated-vtables 1083 1084Use Apple's kernel extensions ABI 1085 1086.. option:: -fapple-pragma-pack, -fno-apple-pragma-pack 1087 1088Enable Apple gcc-compatible #pragma pack handling 1089 1090.. option:: -fapplication-extension, -fno-application-extension 1091 1092Restrict code to those available for App Extensions 1093 1094.. option:: -fasm, -fno-asm 1095 1096.. option:: -fasm-blocks, -fno-asm-blocks 1097 1098.. option:: -fassociative-math, -fno-associative-math 1099 1100.. option:: -fassume-sane-operator-new, -fno-assume-sane-operator-new 1101 1102.. option:: -fast 1103 1104.. option:: -fastcp 1105 1106.. option:: -fastf 1107 1108.. option:: -fasynchronous-unwind-tables, -fno-asynchronous-unwind-tables 1109 1110.. option:: -fautolink, -fno-autolink 1111 1112.. option:: -fblocks, -fno-blocks 1113 1114Enable the 'blocks' language feature 1115 1116.. option:: -fbootclasspath=<arg>, --bootclasspath <arg>, --bootclasspath=<arg> 1117 1118.. option:: -fborland-extensions, -fno-borland-extensions 1119 1120Accept non-standard constructs supported by the Borland compiler 1121 1122.. option:: -fbracket-depth=<arg> 1123 1124.. option:: -fbuiltin, -fno-builtin 1125 1126.. option:: -fbuiltin-module-map 1127 1128Load the clang builtins module map file. 1129 1130.. option:: -fcaret-diagnostics, -fno-caret-diagnostics 1131 1132.. option:: -fclasspath=<arg>, --CLASSPATH <arg>, --CLASSPATH=<arg>, --classpath <arg>, --classpath=<arg> 1133 1134.. option:: -fcolor-diagnostics, -fno-color-diagnostics 1135 1136Use colors in diagnostics 1137 1138.. option:: -fcommon, -fno-common 1139 1140.. option:: -fcompile-resource=<arg>, --resource <arg>, --resource=<arg> 1141 1142.. option:: -fconstant-cfstrings, -fno-constant-cfstrings 1143 1144.. option:: -fconstant-string-class=<arg> 1145 1146.. option:: -fconstexpr-backtrace-limit=<arg> 1147 1148.. option:: -fconstexpr-depth=<arg> 1149 1150.. option:: -fconstexpr-steps=<arg> 1151 1152.. option:: -fcoroutines-ts, -fno-coroutines-ts 1153 1154Enable support for the C++ Coroutines TS 1155 1156.. option:: -fcoverage-mapping, -fno-coverage-mapping 1157 1158Generate coverage mapping to enable code coverage analysis 1159 1160.. option:: -fcreate-profile 1161 1162.. option:: -fcxx-exceptions, -fno-cxx-exceptions 1163 1164Enable C++ exceptions 1165 1166.. option:: -fcxx-modules, -fno-cxx-modules 1167 1168.. option:: -fdata-sections, -fno-data-sections 1169 1170Place each data in its own section (ELF Only) 1171 1172.. option:: -fdebug-info-for-profiling, -fno-debug-info-for-profiling 1173 1174Emit extra debug info to make sample profile more accurate. 1175 1176.. option:: -fdebug-macro, -fno-debug-macro 1177 1178Emit macro debug information 1179 1180.. option:: -fdebug-pass-arguments 1181 1182.. option:: -fdebug-pass-structure 1183 1184.. option:: -fdebug-prefix-map=<arg> 1185 1186remap file source paths in debug info 1187 1188.. option:: -fdebug-types-section, -fno-debug-types-section 1189 1190Place debug types in their own section (ELF Only) 1191 1192.. option:: -fdelayed-template-parsing, -fno-delayed-template-parsing 1193 1194Parse templated function definitions at the end of the translation unit 1195 1196.. option:: -fdenormal-fp-math=<arg> 1197 1198.. option:: -fdiagnostics-absolute-paths 1199 1200Print absolute paths in diagnostics 1201 1202.. option:: -fdiagnostics-color, -fno-diagnostics-color 1203 1204.. program:: clang1 1205.. option:: -fdiagnostics-color=<arg> 1206.. program:: clang 1207 1208.. option:: -fdiagnostics-show-hotness, -fno-diagnostics-show-hotness 1209 1210Enable profile hotness information in diagnostic line 1211 1212.. option:: -fdiagnostics-show-note-include-stack, -fno-diagnostics-show-note-include-stack 1213 1214Display include stacks for diagnostic notes 1215 1216.. option:: -fdiagnostics-show-option, -fno-diagnostics-show-option 1217 1218Print option name with mappable diagnostics 1219 1220.. option:: -fdiagnostics-show-template-tree 1221 1222Print a template comparison tree for differing templates 1223 1224.. option:: -fdollars-in-identifiers, -fno-dollars-in-identifiers 1225 1226Allow '$' in identifiers 1227 1228.. option:: -fdwarf-directory-asm, -fno-dwarf-directory-asm 1229 1230.. option:: -felide-constructors, -fno-elide-constructors 1231 1232.. option:: -feliminate-unused-debug-symbols, -fno-eliminate-unused-debug-symbols 1233 1234.. option:: -fembed-bitcode=<option>, -fembed-bitcode (equivalent to -fembed-bitcode=all), -fembed-bitcode-marker (equivalent to -fembed-bitcode=marker) 1235 1236Embed LLVM bitcode (option: off, all, bitcode, marker) 1237 1238.. option:: -femit-all-decls 1239 1240Emit all declarations, even if unused 1241 1242.. option:: -femulated-tls, -fno-emulated-tls 1243 1244Use emutls functions to access thread\_local variables 1245 1246.. option:: -fencoding=<arg>, --encoding <arg>, --encoding=<arg> 1247 1248.. option:: -ferror-limit=<arg> 1249 1250.. option:: -fexceptions, -fno-exceptions 1251 1252Enable support for exception handling 1253 1254.. option:: -fexec-charset=<arg> 1255 1256.. option:: -fextdirs=<arg>, --extdirs <arg>, --extdirs=<arg> 1257 1258.. option:: -ffast-math, -fno-fast-math 1259 1260Allow aggressive, lossy floating-point optimizations 1261 1262.. option:: -ffinite-math-only, -fno-finite-math-only 1263 1264.. option:: -ffor-scope, -fno-for-scope 1265 1266.. option:: -ffp-contract=<arg> 1267 1268Form fused FP ops (e.g. FMAs): fast (everywhere) \| on (according to FP\_CONTRACT pragma, default) \| off (never fuse) 1269 1270.. option:: -ffreestanding 1271 1272Assert that the compilation takes place in a freestanding environment 1273 1274.. option:: -ffunction-sections, -fno-function-sections 1275 1276Place each function in its own section (ELF Only) 1277 1278.. option:: -fgnu-inline-asm, -fno-gnu-inline-asm 1279 1280.. option:: -fgnu-keywords, -fno-gnu-keywords 1281 1282Allow GNU-extension keywords regardless of language standard 1283 1284.. option:: -fgnu-runtime 1285 1286Generate output compatible with the standard GNU Objective-C runtime 1287 1288.. option:: -fgnu89-inline, -fno-gnu89-inline 1289 1290Use the gnu89 inline semantics 1291 1292.. option:: -fhonor-infinities, -fhonor-infinites, -fno-honor-infinities 1293 1294.. option:: -fhonor-nans, -fno-honor-nans 1295 1296.. option:: -fhosted 1297 1298.. option:: -fimplicit-module-maps, -fmodule-maps, -fno-implicit-module-maps 1299 1300Implicitly search the file system for module map files. 1301 1302.. option:: -fimplicit-modules, -fno-implicit-modules 1303 1304.. option:: -finput-charset=<arg> 1305 1306.. option:: -finstrument-functions 1307 1308Generate calls to instrument function entry and exit 1309 1310.. option:: -fintegrated-as, -fno-integrated-as, -integrated-as 1311 1312Enable the integrated assembler 1313 1314.. option:: -fjump-tables, -fno-jump-tables 1315 1316.. option:: -flax-vector-conversions, -fno-lax-vector-conversions 1317 1318.. option:: -flimited-precision=<arg> 1319 1320.. option:: -flto, -fno-lto 1321 1322Enable LTO in 'full' mode 1323 1324.. option:: -flto-jobs=<arg> 1325 1326Controls the backend parallelism of -flto=thin (default of 0 means the number of threads will be derived from the number of CPUs detected) 1327 1328.. program:: clang1 1329.. option:: -flto=<arg> 1330.. program:: clang 1331 1332Set LTO mode to either 'full' or 'thin' 1333 1334.. option:: -fmacro-backtrace-limit=<arg> 1335 1336.. option:: -fmath-errno, -fno-math-errno 1337 1338Require math functions to indicate errors by setting errno 1339 1340.. option:: -fmax-type-align=<arg> 1341 1342Specify the maximum alignment to enforce on pointers lacking an explicit alignment 1343 1344.. option:: -fmerge-all-constants, -fno-merge-all-constants 1345 1346.. option:: -fmessage-length=<arg> 1347 1348.. option:: -fmodule-file-deps, -fno-module-file-deps 1349 1350.. option:: -fmodule-file=<file> 1351 1352Load this precompiled module file 1353 1354.. option:: -fmodule-map-file=<file> 1355 1356Load this module map file 1357 1358.. option:: -fmodule-name=<name>, -fmodule-implementation-of <arg>, -fmodule-name <arg> 1359 1360Specify the name of the module to build 1361 1362.. option:: -fmodules, -fno-modules 1363 1364Enable the 'modules' language feature 1365 1366.. option:: -fmodules-decluse, -fno-modules-decluse 1367 1368Require declaration of modules used within a module 1369 1370.. option:: -fmodules-ignore-macro=<arg> 1371 1372Ignore the definition of the given macro when building and loading modules 1373 1374.. option:: -fmodules-search-all, -fno-modules-search-all 1375 1376Search even non-imported modules to resolve references 1377 1378.. option:: -fmodules-strict-decluse 1379 1380Like -fmodules-decluse but requires all headers to be in modules 1381 1382.. option:: -fmodules-ts 1383 1384Enable support for the C++ Modules TS 1385 1386.. option:: -fms-compatibility, -fno-ms-compatibility 1387 1388Enable full Microsoft Visual C++ compatibility 1389 1390.. option:: -fms-compatibility-version=<arg> 1391 1392Dot-separated value representing the Microsoft compiler version number to report in \_MSC\_VER (0 = don't define it (default)) 1393 1394.. option:: -fms-extensions, -fno-ms-extensions 1395 1396Accept some non-standard constructs supported by the Microsoft compiler 1397 1398.. option:: -fms-memptr-rep=<arg> 1399 1400.. option:: -fms-volatile<arg> 1401 1402.. option:: -fmsc-version=<arg> 1403 1404Microsoft compiler version number to report in \_MSC\_VER (0 = don't define it (default)) 1405 1406.. option:: -fmudflap 1407 1408.. option:: -fmudflapth 1409 1410.. option:: -fnested-functions 1411 1412.. option:: -fnew-alignment=<align>, -fnew-alignment <arg> 1413 1414Specifies the largest alignment guaranteed by '::operator new(size\_t)' 1415 1416.. option:: -fnext-runtime 1417 1418.. option:: -fno-builtin-<arg> 1419 1420Disable implicit builtin knowledge of a specific function 1421 1422.. option:: -fno-elide-type 1423 1424Do not elide types when printing diagnostics 1425 1426.. option:: -fno-max-type-align 1427 1428.. option:: -fno-operator-names 1429 1430Do not treat C++ operator name keywords as synonyms for operators 1431 1432.. option:: -fno-strict-modules-decluse 1433 1434.. option:: -fno-working-directory 1435 1436.. option:: -fnoopenmp-use-tls 1437 1438.. option:: -fobjc-abi-version=<arg> 1439 1440.. option:: -fobjc-arc, -fno-objc-arc 1441 1442Synthesize retain and release calls for Objective-C pointers 1443 1444.. option:: -fobjc-arc-exceptions, -fno-objc-arc-exceptions 1445 1446Use EH-safe code when synthesizing retains and releases in -fobjc-arc 1447 1448.. option:: -fobjc-exceptions, -fno-objc-exceptions 1449 1450Enable Objective-C exceptions 1451 1452.. option:: -fobjc-infer-related-result-type, -fno-objc-infer-related-result-type 1453 1454.. option:: -fobjc-legacy-dispatch, -fno-objc-legacy-dispatch 1455 1456.. option:: -fobjc-link-runtime 1457 1458.. option:: -fobjc-nonfragile-abi, -fno-objc-nonfragile-abi 1459 1460.. option:: -fobjc-nonfragile-abi-version=<arg> 1461 1462.. option:: -fobjc-runtime=<arg> 1463 1464Specify the target Objective-C runtime kind and version 1465 1466.. option:: -fobjc-sender-dependent-dispatch 1467 1468.. option:: -fobjc-weak, -fno-objc-weak 1469 1470Enable ARC-style weak references in Objective-C 1471 1472.. option:: -fomit-frame-pointer, -fno-omit-frame-pointer 1473 1474.. option:: -fopenmp, -fno-openmp 1475 1476.. option:: -fopenmp-dump-offload-linker-script 1477 1478.. option:: -fopenmp-use-tls 1479 1480.. option:: -fopenmp-version=<arg> 1481 1482.. program:: clang1 1483.. option:: -fopenmp=<arg> 1484.. program:: clang 1485 1486.. option:: -foperator-arrow-depth=<arg> 1487 1488.. option:: -foptimization-record-file=<arg> 1489 1490Specify the file name of any generated YAML optimization record 1491 1492.. option:: -foptimize-sibling-calls, -fno-optimize-sibling-calls 1493 1494.. option:: -foutput-class-dir=<arg>, --output-class-directory <arg>, --output-class-directory=<arg> 1495 1496.. option:: -fpack-struct, -fno-pack-struct 1497 1498.. program:: clang1 1499.. option:: -fpack-struct=<arg> 1500.. program:: clang 1501 1502Specify the default maximum struct packing alignment 1503 1504.. option:: -fpascal-strings, -fno-pascal-strings, -mpascal-strings 1505 1506Recognize and construct Pascal-style string literals 1507 1508.. option:: -fpcc-struct-return 1509 1510Override the default ABI to return all structs on the stack 1511 1512.. option:: -fpch-preprocess 1513 1514.. option:: -fpic, -fno-pic 1515 1516.. option:: -fpie, -fno-pie 1517 1518.. option:: -fplugin=<dsopath> 1519 1520Load the named plugin (dynamic shared object) 1521 1522.. option:: -fpreserve-as-comments, -fno-preserve-as-comments 1523 1524.. option:: -fprofile-arcs, -fno-profile-arcs 1525 1526.. option:: -fprofile-dir=<arg> 1527 1528.. option:: -fprofile-generate, -fno-profile-generate 1529 1530Generate instrumented code to collect execution counts into default.profraw (overridden by LLVM\_PROFILE\_FILE env var) 1531 1532.. program:: clang1 1533.. option:: -fprofile-generate=<directory> 1534.. program:: clang 1535 1536Generate instrumented code to collect execution counts into <directory>/default.profraw (overridden by LLVM\_PROFILE\_FILE env var) 1537 1538.. option:: -fprofile-instr-generate, -fno-profile-instr-generate 1539 1540Generate instrumented code to collect execution counts into default.profraw file (overridden by '=' form of option or LLVM\_PROFILE\_FILE env var) 1541 1542.. program:: clang1 1543.. option:: -fprofile-instr-generate=<file> 1544.. program:: clang 1545 1546Generate instrumented code to collect execution counts into <file> (overridden by LLVM\_PROFILE\_FILE env var) 1547 1548.. option:: -fprofile-instr-use, -fno-profile-instr-use, -fprofile-use 1549 1550.. program:: clang1 1551.. option:: -fprofile-instr-use=<arg> 1552.. program:: clang 1553 1554Use instrumentation data for profile-guided optimization 1555 1556.. option:: -fprofile-sample-use, -fauto-profile, -fno-profile-sample-use 1557 1558.. program:: clang1 1559.. option:: -fprofile-sample-use=<arg>, -fauto-profile=<arg> 1560.. program:: clang 1561 1562Enable sample-based profile guided optimizations 1563 1564.. program:: clang1 1565.. option:: -fprofile-use=<pathname> 1566.. program:: clang 1567 1568Use instrumentation data for profile-guided optimization. If pathname is a directory, it reads from <pathname>/default.profdata. Otherwise, it reads from file <pathname>. 1569 1570.. option:: -freciprocal-math, -fno-reciprocal-math 1571 1572Allow division operations to be reassociated 1573 1574.. option:: -freg-struct-return 1575 1576Override the default ABI to return small structs in registers 1577 1578.. option:: -frelaxed-template-template-args, -fno-relaxed-template-template-args 1579 1580Enable C++17 relaxed template template argument matching 1581 1582.. option:: -freroll-loops, -fno-reroll-loops 1583 1584Turn on loop reroller 1585 1586.. option:: -fretain-comments-from-system-headers 1587 1588.. option:: -frewrite-includes, -fno-rewrite-includes 1589 1590.. option:: -frewrite-map-file <arg> 1591 1592.. program:: clang1 1593.. option:: -frewrite-map-file=<arg> 1594.. program:: clang 1595 1596.. option:: -fropi, -fno-ropi 1597 1598.. option:: -frtti, -fno-rtti 1599 1600.. option:: -frwpi, -fno-rwpi 1601 1602.. option:: -fsave-optimization-record, -fno-save-optimization-record 1603 1604Generate a YAML optimization record file 1605 1606.. option:: -fshort-enums, -fno-short-enums 1607 1608Allocate to an enum type only as many bytes as it needs for the declared range of possible values 1609 1610.. option:: -fshort-wchar, -fno-short-wchar 1611 1612Force wchar\_t to be a short unsigned int 1613 1614.. option:: -fshow-column, -fno-show-column 1615 1616.. option:: -fshow-overloads=<arg> 1617 1618Which overload candidates to show when overload resolution fails: best\|all; defaults to all 1619 1620.. option:: -fshow-source-location, -fno-show-source-location 1621 1622.. option:: -fsignaling-math, -fno-signaling-math 1623 1624.. option:: -fsigned-bitfields 1625 1626.. option:: -fsigned-char, -fno-signed-char, --signed-char 1627 1628.. option:: -fsigned-zeros, -fno-signed-zeros 1629 1630.. option:: -fsized-deallocation, -fno-sized-deallocation 1631 1632Enable C++14 sized global deallocation functions 1633 1634.. option:: -fsjlj-exceptions 1635 1636Use SjLj style exceptions 1637 1638.. option:: -fslp-vectorize, -fno-slp-vectorize, -ftree-slp-vectorize 1639 1640Enable the superword-level parallelism vectorization passes 1641 1642.. option:: -fslp-vectorize-aggressive, -fno-slp-vectorize-aggressive 1643 1644Enable the BB vectorization passes 1645 1646.. option:: -fspell-checking, -fno-spell-checking 1647 1648.. option:: -fspell-checking-limit=<arg> 1649 1650.. option:: -fsplit-dwarf-inlining, -fno-split-dwarf-inlining 1651 1652Place debug types in their own section (ELF Only) 1653 1654.. option:: -fsplit-stack 1655 1656.. option:: -fstack-protector, -fno-stack-protector 1657 1658Enable stack protectors for functions potentially vulnerable to stack smashing 1659 1660.. option:: -fstack-protector-all 1661 1662Force the usage of stack protectors for all functions 1663 1664.. option:: -fstack-protector-strong 1665 1666Use a strong heuristic to apply stack protectors to functions 1667 1668.. option:: -fstandalone-debug, -fno-limit-debug-info, -fno-standalone-debug 1669 1670Emit full debug info for all types used by the program 1671 1672.. option:: -fstrict-aliasing, -fno-strict-aliasing 1673 1674.. option:: -fstrict-enums, -fno-strict-enums 1675 1676Enable optimizations based on the strict definition of an enum's value range 1677 1678.. option:: -fstrict-overflow, -fno-strict-overflow 1679 1680.. option:: -fstrict-return, -fno-strict-return 1681 1682Always treat control flow paths that fall off the end of a non-void function as unreachable 1683 1684.. option:: -fstrict-vtable-pointers, -fno-strict-vtable-pointers 1685 1686Enable optimizations based on the strict rules for overwriting polymorphic C++ objects 1687 1688.. option:: -fstruct-path-tbaa, -fno-struct-path-tbaa 1689 1690.. option:: -ftabstop=<arg> 1691 1692.. option:: -ftemplate-backtrace-limit=<arg> 1693 1694.. option:: -ftemplate-depth-<arg> 1695 1696.. option:: -ftemplate-depth=<arg> 1697 1698.. option:: -ftest-coverage 1699 1700.. option:: -fthinlto-index=<arg> 1701 1702Perform ThinLTO importing using provided function summary index 1703 1704.. option:: -fthreadsafe-statics, -fno-threadsafe-statics 1705 1706.. option:: -ftime-report 1707 1708.. option:: -ftls-model=<arg> 1709 1710.. option:: -ftrap-function=<arg> 1711 1712Issue call to specified function rather than a trap instruction 1713 1714.. option:: -ftrapping-math, -fno-trapping-math 1715 1716.. option:: -ftrapv 1717 1718Trap on integer overflow 1719 1720.. option:: -ftrapv-handler <arg> 1721 1722.. program:: clang1 1723.. option:: -ftrapv-handler=<function name> 1724.. program:: clang 1725 1726Specify the function to be called on overflow 1727 1728.. option:: -ftrigraphs, -fno-trigraphs, -trigraphs, --trigraphs 1729 1730Process trigraph sequences 1731 1732.. option:: -funique-section-names, -fno-unique-section-names 1733 1734Use unique names for text and data sections (ELF Only) 1735 1736.. option:: -funit-at-a-time, -fno-unit-at-a-time 1737 1738.. option:: -funroll-loops, -fno-unroll-loops 1739 1740Turn on loop unroller 1741 1742.. option:: -funsafe-math-optimizations, -fno-unsafe-math-optimizations 1743 1744.. option:: -funsigned-bitfields 1745 1746.. option:: -funsigned-char, -fno-unsigned-char, --unsigned-char 1747 1748.. option:: -funwind-tables, -fno-unwind-tables 1749 1750.. option:: -fuse-cxa-atexit, -fno-use-cxa-atexit 1751 1752.. option:: -fuse-init-array, -fno-use-init-array 1753 1754Use .init\_array instead of .ctors 1755 1756.. option:: -fuse-ld=<arg> 1757 1758.. option:: -fuse-line-directives, -fno-use-line-directives 1759 1760.. option:: -fveclib=<arg> 1761 1762Use the given vector functions library 1763 1764.. option:: -fvectorize, -fno-vectorize, -ftree-vectorize 1765 1766Enable the loop vectorization passes 1767 1768.. option:: -fverbose-asm, -fno-verbose-asm 1769 1770.. option:: -fvisibility-inlines-hidden 1771 1772Give inline C++ member functions default visibility by default 1773 1774.. option:: -fvisibility-ms-compat 1775 1776Give global types 'default' visibility and global functions and variables 'hidden' visibility by default 1777 1778.. option:: -fvisibility=<arg> 1779 1780Set the default symbol visibility for all global declarations 1781 1782.. option:: -fwhole-program-vtables, -fno-whole-program-vtables 1783 1784Enables whole-program vtable optimization. Requires -flto 1785 1786.. option:: -fwrapv, -fno-wrapv 1787 1788Treat signed integer overflow as two's complement 1789 1790.. option:: -fwritable-strings 1791 1792Store string literals as writable data 1793 1794.. option:: -fxray-always-instrument=<arg> 1795 1796Filename defining the whitelist for imbuing the 'always instrument' XRay attribute. 1797 1798.. option:: -fxray-instruction-threshold<arg> 1799 1800.. program:: clang1 1801.. option:: -fxray-instruction-threshold=<arg> 1802.. program:: clang 1803 1804Sets the minimum function size to instrument with XRay 1805 1806.. option:: -fxray-instrument, -fno-xray-instrument 1807 1808Generate XRay instrumentation sleds on function entry and exit 1809 1810.. option:: -fxray-never-instrument=<arg> 1811 1812Filename defining the whitelist for imbuing the 'never instrument' XRay attribute. 1813 1814.. option:: -fzero-initialized-in-bss, -fno-zero-initialized-in-bss 1815 1816.. option:: -fzvector, -fno-zvector, -mzvector 1817 1818Enable System z vector language extension 1819 1820.. option:: -pedantic, --pedantic, -no-pedantic, --no-pedantic 1821 1822.. option:: -pedantic-errors, --pedantic-errors 1823 1824OpenCL flags 1825------------ 1826.. option:: -cl-denorms-are-zero 1827 1828OpenCL only. Allow denormals to be flushed to zero. 1829 1830.. option:: -cl-fast-relaxed-math 1831 1832OpenCL only. Sets -cl-finite-math-only and -cl-unsafe-math-optimizations, and defines \_\_FAST\_RELAXED\_MATH\_\_. 1833 1834.. option:: -cl-finite-math-only 1835 1836OpenCL only. Allow floating-point optimizations that assume arguments and results are not NaNs or +-Inf. 1837 1838.. option:: -cl-fp32-correctly-rounded-divide-sqrt 1839 1840OpenCL only. Specify that single precision floating-point divide and sqrt used in the program source are correctly rounded. 1841 1842.. option:: -cl-kernel-arg-info 1843 1844OpenCL only. Generate kernel argument metadata. 1845 1846.. option:: -cl-mad-enable 1847 1848OpenCL only. Allow use of less precise MAD computations in the generated binary. 1849 1850.. option:: -cl-no-signed-zeros 1851 1852OpenCL only. Allow use of less precise no signed zeros computations in the generated binary. 1853 1854.. option:: -cl-opt-disable 1855 1856OpenCL only. This option disables all optimizations. By default optimizations are enabled. 1857 1858.. option:: -cl-single-precision-constant 1859 1860OpenCL only. Treat double precision floating-point constant as single precision constant. 1861 1862.. option:: -cl-std=<arg> 1863 1864OpenCL language standard to compile for. 1865 1866.. option:: -cl-strict-aliasing 1867 1868OpenCL only. This option is added for compatibility with OpenCL 1.0. 1869 1870.. option:: -cl-unsafe-math-optimizations 1871 1872OpenCL only. Allow unsafe floating-point optimizations. Also implies -cl-no-signed-zeros and -cl-mad-enable. 1873 1874Target-dependent compilation options 1875~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1876.. option:: -G<size>, -G=<arg>, -msmall-data-threshold=<arg> 1877 1878Put objects of at most <size> bytes into small data section (MIPS / Hexagon) 1879 1880.. option:: -m16 1881 1882.. option:: -m32 1883 1884.. option:: -m64 1885 1886.. option:: -mabi=<arg> 1887 1888.. option:: -mabicalls, -mno-abicalls 1889 1890Enable SVR4-style position-independent code (Mips only) 1891 1892.. option:: -malign-double 1893 1894Align doubles to two words in structs (x86 only) 1895 1896.. option:: -march=<arg> 1897 1898.. option:: -masm=<arg> 1899 1900.. option:: -mbackchain, -mno-backchain 1901 1902Link stack frames through backchain on System Z 1903 1904.. option:: -mcheck-zero-division, -mno-check-zero-division 1905 1906.. option:: -mcmodel=<arg> 1907 1908.. option:: -mcompact-branches=<arg> 1909 1910.. option:: -mconsole<arg> 1911 1912.. option:: -mcpu=<arg>, -mv4 (equivalent to -mcpu=hexagonv4), -mv5 (equivalent to -mcpu=hexagonv5), -mv55 (equivalent to -mcpu=hexagonv55), -mv60 (equivalent to -mcpu=hexagonv60), -mv62 (equivalent to -mcpu=hexagonv62) 1913 1914.. option:: -mdll<arg> 1915 1916.. option:: -mdouble-float 1917 1918.. option:: -mdsp, -mno-dsp 1919 1920.. option:: -mdspr2, -mno-dspr2 1921 1922.. option:: -mdynamic-no-pic<arg> 1923 1924.. option:: -meabi <arg> 1925 1926Set EABI type, e.g. 4, 5 or gnu (default depends on triple) 1927 1928.. option:: -mfentry 1929 1930Insert calls to fentry at function entry (x86 only) 1931 1932.. option:: -mfloat-abi=<arg> 1933 1934.. option:: -mfp32 1935 1936Use 32-bit floating point registers (MIPS only) 1937 1938.. option:: -mfp64 1939 1940Use 64-bit floating point registers (MIPS only) 1941 1942.. option:: -mfpmath=<arg> 1943 1944.. option:: -mfpu=<arg> 1945 1946.. option:: -mglobal-merge, -mno-global-merge 1947 1948Enable merging of globals 1949 1950.. option:: -mhard-float 1951 1952.. option:: -mhwdiv=<arg>, --mhwdiv <arg>, --mhwdiv=<arg> 1953 1954.. option:: -miamcu, -mno-iamcu 1955 1956Use Intel MCU ABI 1957 1958.. option:: -mimplicit-float, -mno-implicit-float 1959 1960.. option:: -mimplicit-it=<arg> 1961 1962.. option:: -mincremental-linker-compatible, -mno-incremental-linker-compatible 1963 1964(integrated-as) Emit an object file which can be used with an incremental linker 1965 1966.. option:: -miphoneos-version-min=<arg>, -mios-version-min=<arg> 1967 1968.. option:: -mips16 1969 1970.. option:: -mkernel 1971 1972.. option:: -mldc1-sdc1, -mno-ldc1-sdc1 1973 1974.. option:: -mlong-calls, -mno-long-calls 1975 1976Generate branches with extended addressability, usually via indirect jumps. 1977 1978.. option:: -mmacosx-version-min=<arg> 1979 1980Set Mac OS X deployment target 1981 1982.. option:: -mmicromips, -mno-micromips 1983 1984.. option:: -mms-bitfields, -mno-ms-bitfields 1985 1986Set the default structure layout to be compatible with the Microsoft compiler standard 1987 1988.. option:: -mmsa, -mno-msa 1989 1990Enable MSA ASE (MIPS only) 1991 1992.. option:: -mnan=<arg> 1993 1994.. option:: -mno-mips16 1995 1996.. option:: -momit-leaf-frame-pointer, -mno-omit-leaf-frame-pointer 1997 1998Omit frame pointer setup for leaf functions 1999 2000.. option:: -moslib=<arg> 2001 2002.. option:: -mpie-copy-relocations, -mno-pie-copy-relocations 2003 2004Use copy relocations support for PIE builds 2005 2006.. option:: -mqdsp6-compat 2007 2008Enable hexagon-qdsp6 backward compatibility 2009 2010.. option:: -mrecip 2011 2012.. program:: clang1 2013.. option:: -mrecip=<arg1>,<arg2>... 2014.. program:: clang 2015 2016.. option:: -mred-zone, -mno-red-zone 2017 2018.. option:: -mregparm=<arg> 2019 2020.. option:: -mrelax-all, -mno-relax-all 2021 2022(integrated-as) Relax all machine instructions 2023 2024.. option:: -mrtd, -mno-rtd 2025 2026Make StdCall calling convention the default 2027 2028.. option:: -msingle-float 2029 2030.. option:: -msoft-float, -mno-soft-float 2031 2032Use software floating point 2033 2034.. option:: -mstack-alignment=<arg> 2035 2036Set the stack alignment 2037 2038.. option:: -mstack-probe-size=<arg> 2039 2040Set the stack probe size 2041 2042.. option:: -mstackrealign, -mno-stackrealign 2043 2044Force realign the stack at entry to every function 2045 2046.. option:: -mthread-model <arg> 2047 2048The thread model to use, e.g. posix, single (posix by default) 2049 2050.. option:: -mthreads<arg> 2051 2052.. option:: -mthumb, -mno-thumb 2053 2054.. option:: -mtune=<arg> 2055 2056.. option:: -mtvos-version-min=<arg>, -mappletvos-version-min=<arg> 2057 2058.. option:: -municode<arg> 2059 2060.. option:: -mvx, -mno-vx 2061 2062.. option:: -mwarn-nonportable-cfstrings, -mno-warn-nonportable-cfstrings 2063 2064.. option:: -mwatchos-version-min=<arg> 2065 2066.. option:: -mwindows<arg> 2067 2068.. option:: -mx32 2069 2070.. option:: -mxgot, -mno-xgot 2071 2072AARCH64 2073------- 2074.. option:: -ffixed-x18 2075 2076Reserve the x18 register (AArch64 only) 2077 2078.. option:: -mfix-cortex-a53-835769, -mno-fix-cortex-a53-835769 2079 2080Workaround Cortex-A53 erratum 835769 (AArch64 only) 2081 2082.. option:: -mgeneral-regs-only 2083 2084Generate code which only uses the general purpose registers (AArch64 only) 2085 2086AMDGPU 2087------ 2088ARM 2089--- 2090.. option:: -ffixed-r9 2091 2092Reserve the r9 register (ARM only) 2093 2094.. option:: -mcrc 2095 2096Allow use of CRC instructions (ARM only) 2097 2098.. option:: -mexecute-only, -mno-execute-only, -mpure-code 2099 2100Disallow generation of data access to code sections (ARM only) 2101 2102.. option:: -mno-movt 2103 2104Disallow use of movt/movw pairs (ARM only) 2105 2106.. option:: -mno-neg-immediates 2107 2108Disallow converting instructions with negative immediates to their negation or inversion. 2109 2110.. option:: -mnocrc 2111 2112Disallow use of CRC instructions (ARM only) 2113 2114.. option:: -mrestrict-it, -mno-restrict-it 2115 2116Disallow generation of deprecated IT blocks for ARMv8. It is on by default for ARMv8 Thumb mode. 2117 2118.. option:: -munaligned-access, -mno-unaligned-access 2119 2120Allow memory accesses to be unaligned (AArch32/AArch64 only) 2121 2122Hexagon 2123------- 2124.. option:: -mhvx, -mno-hvx 2125 2126Enable Hexagon Vector eXtensions 2127 2128.. option:: -mhvx-double, -mno-hvx-double 2129 2130Enable Hexagon Double Vector eXtensions 2131 2132.. option:: -mieee-rnd-near 2133 2134PowerPC 2135------- 2136.. option:: -maltivec, -mno-altivec 2137 2138.. option:: -mcmpb, -mno-cmpb 2139 2140.. option:: -mcrbits, -mno-crbits 2141 2142.. option:: -mcrypto, -mno-crypto 2143 2144.. option:: -mdirect-move, -mno-direct-move 2145 2146.. option:: -mfloat128, -mno-float128 2147 2148.. option:: -mfprnd, -mno-fprnd 2149 2150.. option:: -mhtm, -mno-htm 2151 2152.. option:: -minvariant-function-descriptors, -mno-invariant-function-descriptors 2153 2154.. option:: -misel, -mno-isel 2155 2156.. option:: -mlongcall, -mno-longcall 2157 2158.. option:: -mmfocrf, -mmfcrf, -mno-mfocrf 2159 2160.. option:: -mpopcntd, -mno-popcntd 2161 2162.. option:: -mpower8-vector, -mno-power8-vector 2163 2164.. option:: -mpower9-vector, -mno-power9-vector 2165 2166.. option:: -mqpx, -mno-qpx 2167 2168.. option:: -mvsx, -mno-vsx 2169 2170WebAssembly 2171----------- 2172.. option:: -msimd128, -mno-simd128 2173 2174X86 2175--- 2176.. option:: -m3dnow, -mno-3dnow 2177 2178.. option:: -m3dnowa, -mno-3dnowa 2179 2180.. option:: -madx, -mno-adx 2181 2182.. option:: -maes, -mno-aes 2183 2184.. option:: -mavx, -mno-avx 2185 2186.. option:: -mavx2, -mno-avx2 2187 2188.. option:: -mavx512bw, -mno-avx512bw 2189 2190.. option:: -mavx512cd, -mno-avx512cd 2191 2192.. option:: -mavx512dq, -mno-avx512dq 2193 2194.. option:: -mavx512er, -mno-avx512er 2195 2196.. option:: -mavx512f, -mno-avx512f 2197 2198.. option:: -mavx512ifma, -mno-avx512ifma 2199 2200.. option:: -mavx512pf, -mno-avx512pf 2201 2202.. option:: -mavx512vbmi, -mno-avx512vbmi 2203 2204.. option:: -mavx512vl, -mno-avx512vl 2205 2206.. option:: -mbmi, -mno-bmi 2207 2208.. option:: -mbmi2, -mno-bmi2 2209 2210.. option:: -mclflushopt, -mno-clflushopt 2211 2212.. option:: -mclwb, -mno-clwb 2213 2214.. option:: -mclzero, -mno-clzero 2215 2216.. option:: -mcx16, -mno-cx16 2217 2218.. option:: -mf16c, -mno-f16c 2219 2220.. option:: -mfma, -mno-fma 2221 2222.. option:: -mfma4, -mno-fma4 2223 2224.. option:: -mfsgsbase, -mno-fsgsbase 2225 2226.. option:: -mfxsr, -mno-fxsr 2227 2228.. option:: -mlzcnt, -mno-lzcnt 2229 2230.. option:: -mmmx, -mno-mmx 2231 2232.. option:: -mmovbe, -mno-movbe 2233 2234.. option:: -mmpx, -mno-mpx 2235 2236.. option:: -mmwaitx, -mno-mwaitx 2237 2238.. option:: -mpclmul, -mno-pclmul 2239 2240.. option:: -mpku, -mno-pku 2241 2242.. option:: -mpopcnt, -mno-popcnt 2243 2244.. option:: -mprefetchwt1, -mno-prefetchwt1 2245 2246.. option:: -mprfchw, -mno-prfchw 2247 2248.. option:: -mrdrnd, -mno-rdrnd 2249 2250.. option:: -mrdseed, -mno-rdseed 2251 2252.. option:: -mrtm, -mno-rtm 2253 2254.. option:: -msgx, -mno-sgx 2255 2256.. option:: -msha, -mno-sha 2257 2258.. option:: -msse, -mno-sse 2259 2260.. option:: -msse2, -mno-sse2 2261 2262.. option:: -msse3, -mno-sse3 2263 2264.. option:: -msse4.1, -mno-sse4.1 2265 2266.. program:: clang1 2267.. option:: -msse4.2, -mno-sse4.2, -msse4 2268.. program:: clang 2269 2270.. option:: -msse4a, -mno-sse4a 2271 2272.. option:: -mssse3, -mno-ssse3 2273 2274.. option:: -mtbm, -mno-tbm 2275 2276.. option:: -mx87, -m80387, -mno-x87 2277 2278.. option:: -mxop, -mno-xop 2279 2280.. option:: -mxsave, -mno-xsave 2281 2282.. option:: -mxsavec, -mno-xsavec 2283 2284.. option:: -mxsaveopt, -mno-xsaveopt 2285 2286.. option:: -mxsaves, -mno-xsaves 2287 2288Optimization level 2289~~~~~~~~~~~~~~~~~~ 2290 2291Flags controlling how much optimization should be performed. 2292 2293.. option:: -O<arg>, -O (equivalent to -O2), --optimize, --optimize=<arg> 2294 2295.. option:: -Ofast<arg> 2296 2297Debug information generation 2298~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2299 2300Flags controlling how much and what kind of debug information should be 2301generated. 2302 2303Kind and level of debug information 2304----------------------------------- 2305.. option:: -g, --debug, --debug=<arg> 2306 2307Generate source-level debug information 2308 2309.. option:: -gdwarf-2 2310 2311Generate source-level debug information with dwarf version 2 2312 2313.. option:: -gdwarf-3 2314 2315Generate source-level debug information with dwarf version 3 2316 2317.. option:: -gdwarf-4, -gdwarf 2318 2319Generate source-level debug information with dwarf version 4 2320 2321.. option:: -gdwarf-5 2322 2323Generate source-level debug information with dwarf version 5 2324 2325.. option:: -gfull 2326 2327.. option:: -gused 2328 2329Debug level 2330___________ 2331.. option:: -g0 2332 2333.. option:: -g2 2334 2335.. option:: -g3 2336 2337.. option:: -ggdb0 2338 2339.. option:: -ggdb1 2340 2341.. option:: -ggdb2 2342 2343.. option:: -ggdb3 2344 2345.. option:: -gline-tables-only, -g1, -gmlt 2346 2347Emit debug line number tables only 2348 2349.. option:: -gmodules 2350 2351Generate debug info with external references to clang modules or precompiled headers 2352 2353Debugger to tune debug information for 2354______________________________________ 2355.. option:: -ggdb 2356 2357.. option:: -glldb 2358 2359.. option:: -gsce 2360 2361Debug information flags 2362----------------------- 2363.. option:: -gcolumn-info, -gno-column-info 2364 2365.. option:: -gdwarf-aranges 2366 2367.. option:: -ggnu-pubnames 2368 2369.. option:: -grecord-gcc-switches, -gno-record-gcc-switches 2370 2371.. option:: -gsplit-dwarf 2372 2373.. option:: -gstrict-dwarf, -gno-strict-dwarf 2374 2375Static analyzer flags 2376===================== 2377 2378Flags controlling the behavior of the Clang Static Analyzer. 2379 2380.. option:: -Xanalyzer <arg> 2381 2382Pass <arg> to the static analyzer 2383 2384Fortran compilation flags 2385========================= 2386 2387Flags that will be passed onto the ``gfortran`` compiler when Clang is given 2388a Fortran input. 2389 2390.. option:: -A<arg>, --assert <arg>, --assert=<arg> 2391 2392.. option:: -A-<arg> 2393 2394.. option:: -J<arg> 2395 2396.. option:: -cpp 2397 2398.. option:: -faggressive-function-elimination, -fno-aggressive-function-elimination 2399 2400.. option:: -falign-commons, -fno-align-commons 2401 2402.. option:: -fall-intrinsics, -fno-all-intrinsics 2403 2404.. option:: -fautomatic, -fno-automatic 2405 2406.. option:: -fbackslash, -fno-backslash 2407 2408.. option:: -fbacktrace, -fno-backtrace 2409 2410.. option:: -fblas-matmul-limit=<arg> 2411 2412.. option:: -fbounds-check, -fno-bounds-check 2413 2414.. option:: -fcheck-array-temporaries, -fno-check-array-temporaries 2415 2416.. option:: -fcheck=<arg> 2417 2418.. option:: -fcoarray=<arg> 2419 2420.. option:: -fconvert=<arg> 2421 2422.. option:: -fcray-pointer, -fno-cray-pointer 2423 2424.. option:: -fd-lines-as-code, -fno-d-lines-as-code 2425 2426.. option:: -fd-lines-as-comments, -fno-d-lines-as-comments 2427 2428.. option:: -fdefault-double-8, -fno-default-double-8 2429 2430.. option:: -fdefault-integer-8, -fno-default-integer-8 2431 2432.. option:: -fdefault-real-8, -fno-default-real-8 2433 2434.. option:: -fdollar-ok, -fno-dollar-ok 2435 2436.. option:: -fdump-fortran-optimized, -fno-dump-fortran-optimized 2437 2438.. option:: -fdump-fortran-original, -fno-dump-fortran-original 2439 2440.. option:: -fdump-parse-tree, -fno-dump-parse-tree 2441 2442.. option:: -fexternal-blas, -fno-external-blas 2443 2444.. option:: -ff2c, -fno-f2c 2445 2446.. option:: -ffixed-form, -fno-fixed-form 2447 2448.. option:: -ffixed-line-length-<arg> 2449 2450.. option:: -ffpe-trap=<arg> 2451 2452.. option:: -ffree-form, -fno-free-form 2453 2454.. option:: -ffree-line-length-<arg> 2455 2456.. option:: -ffrontend-optimize, -fno-frontend-optimize 2457 2458.. option:: -fimplicit-none, -fno-implicit-none 2459 2460.. option:: -finit-character=<arg> 2461 2462.. option:: -finit-integer=<arg> 2463 2464.. option:: -finit-local-zero, -fno-init-local-zero 2465 2466.. option:: -finit-logical=<arg> 2467 2468.. option:: -finit-real=<arg> 2469 2470.. option:: -finteger-4-integer-8, -fno-integer-4-integer-8 2471 2472.. option:: -fintrinsic-modules-path, -fno-intrinsic-modules-path 2473 2474.. option:: -fmax-array-constructor=<arg> 2475 2476.. option:: -fmax-errors=<arg> 2477 2478.. option:: -fmax-identifier-length, -fno-max-identifier-length 2479 2480.. option:: -fmax-stack-var-size=<arg> 2481 2482.. option:: -fmax-subrecord-length=<arg> 2483 2484.. option:: -fmodule-private, -fno-module-private 2485 2486.. option:: -fpack-derived, -fno-pack-derived 2487 2488.. option:: -fprotect-parens, -fno-protect-parens 2489 2490.. option:: -frange-check, -fno-range-check 2491 2492.. option:: -freal-4-real-10, -fno-real-4-real-10 2493 2494.. option:: -freal-4-real-16, -fno-real-4-real-16 2495 2496.. option:: -freal-4-real-8, -fno-real-4-real-8 2497 2498.. option:: -freal-8-real-10, -fno-real-8-real-10 2499 2500.. option:: -freal-8-real-16, -fno-real-8-real-16 2501 2502.. option:: -freal-8-real-4, -fno-real-8-real-4 2503 2504.. option:: -frealloc-lhs, -fno-realloc-lhs 2505 2506.. option:: -frecord-marker=<arg> 2507 2508.. option:: -frecursive, -fno-recursive 2509 2510.. option:: -frepack-arrays, -fno-repack-arrays 2511 2512.. option:: -fsecond-underscore, -fno-second-underscore 2513 2514.. option:: -fsign-zero, -fno-sign-zero 2515 2516.. option:: -fstack-arrays, -fno-stack-arrays 2517 2518.. option:: -funderscoring, -fno-underscoring 2519 2520.. option:: -fwhole-file, -fno-whole-file 2521 2522.. option:: -nocpp 2523 2524.. option:: -static-libgfortran 2525 2526Linker flags 2527============ 2528Flags that are passed on to the linker 2529 2530.. option:: -L<dir>, --library-directory <arg>, --library-directory=<arg> 2531 2532Add directory to library search path 2533 2534.. option:: -Mach 2535 2536.. option:: -T<script> 2537 2538Specify <script> as linker script 2539 2540.. option:: -Tbss<addr> 2541 2542Set starting address of BSS to <addr> 2543 2544.. option:: -Tdata<addr> 2545 2546Set starting address of BSS to <addr> 2547 2548.. option:: -Ttext<addr> 2549 2550Set starting address of BSS to <addr> 2551 2552.. option:: -Wl,<arg>,<arg2>... 2553 2554Pass the comma separated arguments in <arg> to the linker 2555 2556.. option:: -X 2557 2558.. option:: -Xlinker <arg>, --for-linker <arg>, --for-linker=<arg> 2559 2560Pass <arg> to the linker 2561 2562.. program:: clang1 2563.. option:: -Z 2564.. program:: clang 2565 2566.. option:: -e<arg>, --entry 2567 2568.. option:: -filelist <arg> 2569 2570.. option:: -l<arg> 2571 2572.. option:: -r 2573 2574.. option:: -rpath <arg> 2575 2576.. option:: -s 2577 2578.. option:: -t 2579 2580.. option:: -u<arg>, --force-link <arg>, --force-link=<arg> 2581 2582.. option:: -undef 2583 2584undef all system defines 2585 2586.. option:: -undefined<arg>, --no-undefined 2587 2588.. option:: -z <arg> 2589 2590Pass -z <arg> to the linker 2591 2592