https://gcc.gnu.org/g:aa5404fbb7547f94f854d21066442db05efd90c3
commit r16-8470-gaa5404fbb7547f94f854d21066442db05efd90c3 Author: Sandra Loosemore <[email protected]> Date: Sat Apr 4 22:52:32 2026 +0000 doc: Copy-edit Picolibc option documentation gcc/ChangeLog * doc/invoke.texi (Picolibc Options): Copy-edit for markup, use of proper names, etc. Diff: --- gcc/doc/invoke.texi | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 68f0b3b2270d..4b208344398d 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -30853,10 +30853,10 @@ allocator is used. @node Picolibc Options @subsection Picolibc Options -@cindex picolibc options -@cindex options, picolibc +@cindex Picolibc options +@cindex options, Picolibc -These options control compilation and linking when using picolibc: +These options control compilation and linking when using Picolibc: @table @gcctabopt @opindex oslib @@ -30865,7 +30865,7 @@ Search the library named @var{library} after the C library, permitting symbols undefined by the C library to be defined by this library. The C library, libgcc and this library are placed between @option{--start-group} and @option{--end-group} flags so that each can -refer to symbols in the others. For many targets, picolibc provides a +refer to symbols in the others. For many targets, Picolibc provides a @samp{semihost} variant (specified with @option{--oslib=semihost}) which provides enough basic OS functionality to support console and file I/O when run in an emulator or when using an in-circuit debugger. @@ -30874,29 +30874,30 @@ file I/O when run in an emulator or when using an in-circuit debugger. @item --crt0=@r{[}none@r{|}minimal@r{|}hosted@r{|}semihost@r{]} Replace the default @file{crt0.o} name with @file{crt0-@var{variant}.o}. The @samp{none} variant provides no -startup code at all, allowing the user to supply their +startup code at all, allowing you to supply your own. @samp{minimal} performs basic memory setup but does not invoke any constructors. When no @option{-crt0} option is provided, the default initialization code adds calls to all constructors. @samp{hosted} adds a call to @code{exit} when -@code{main} returns. @samp{semihost} accesses a command line parameter +@code{main} returns. @samp{semihost} accesses a command-line parameter supplied via the semihosting interface and splits that into arguments at whitespace boundaries, passing the resulting array of strings to -main in @code{argc} and @code{argv}. On some targets, including -aarch64, arc, arm, loongarch, m68k, riscv, super-h and x86, +@code{main} in @code{argc} and @code{argv}. On some targets, including +AArch64, ARC, ARM, LoongArch, M680x0, RISC-V, SH, and x86, @samp{semihost} also traps hardware exceptions and prints information to the console. Note that @option{--crt0=semihost} depends upon APIs provided by @option{--oslib=semihost}. @opindex printf @item --printf=@r{[}d@r{|}f@r{|}l@r{|}i@r{|}m@r{]} -Select the printf variant. Picolibc provides five different printf +Select the @code{printf} variant. +Picolibc provides five different @code{printf} variants which offer decreasing levels of functionality along with decreasing code size. @samp{d} is the default level, offering full C17 and POSIX.1-2024 conformance. @samp{f} provides the same feature set, but supports @code{float} values instead of @code{double} which are passed using the @code{printf_float} macro. @samp{l} elides all -floating point and POSIX positional parameter support. @samp{i} limits +floating-point and POSIX positional parameter support. @samp{i} limits integers to those no larger than @code{long}. @samp{m} removes support for most formatting options including width and precision. The formats and arguments are still parsed correctly, but output does not respect @@ -30904,13 +30905,14 @@ those parameters. @opindex scanf @item --scanf=@r{[}d@r{|}f@r{|}l@r{|}i@r{|}m@r{]} -Select the scanf variant. Picolibc provides five different scanf +Select the @code{scanf} variant. +Picolibc provides five different @code{scanf} variants which offer decreasing levels of functionality along with decreasing code size. @samp{d} is the default level, offering full C17 and POSIX.1-2024 conformance. @samp{f} removes support for @code{double} values. @samp{l} elides all floating point support. @samp{i} limits integers to those no larger than -@code{long}. @samp{m} removes support for @code{%[} conversion specifiers. +@code{long}. @samp{m} removes support for @samp{%[} conversion specifiers. @end table
