Go to main content
- Oracle® Developer Studio 12.6: C User's
Guide
- Document Information
- Using This Documentation
- Chapter 1 Introduction to the C Compiler
- Chapter 2 C-Compiler Implementation-Specific Information
- Chapter 3 Support for Atomic Types
- Chapter 4 Parallelizing C Code
- Chapter 5 lint Source
Code Checker
- Chapter 6 Type-Based Alias Analysis
- 6.1 Introduction to Type-Based Analysis
- 6.2 Using Pragmas for Finer Control
- 6.2.1 #pragma alias_level level (list)
- 6.2.1.1 #pragma alias (type, type [, type]…)
- 6.2.1.2 #pragma alias (pointer, pointer [, pointer]…)
- 6.2.1.3 #pragma may_point_to (pointer, variable [, variable]…)
- 6.2.1.4 #pragma noalias (type, type [, type]…)
- 6.2.1.5 #pragma noalias (pointer, pointer [, pointer]…)
- 6.2.1.6 #pragma may_not_point_to (pointer, variable [, variable]…)
- 6.2.1.7 #pragma ivdep
- 6.3 Checking With lint
- 6.4 Examples of Memory Reference Constraints
- Chapter 7 Transitioning to ISO C
- Chapter 8 Converting Applications for
a 64-Bit Environment
- Chapter 9 cscope:
Interactively Examining a C Program
- Appendix A Compiler Options Grouped by
Functionality
- Appendix B C Compiler Options Reference
- B.1 Option Syntax
- B.2 cc Options
- B.2.1 -#
- B.2.2 -###
- B.2.3 –Aname[(tokens)]
- B.2.4 -ansi
- B.2.5 -B[static|dynamic]
- B.2.6 -C
- B.2.7 -c
- B.2.8 -Dname[(arg[,arg])][=expansion]
- B.2.9 -d[y|n]
- B.2.10 -dalign
- B.2.11 -E
- B.2.12 -errfmt[=[no%]error]
- B.2.13 -errhdr[=h]
- B.2.14 -erroff[=t]
- B.2.15 -errshort[=i]
- B.2.16 -errtags[=a]
- B.2.17 -errwarn[=t]
- B.2.18 -fast
- B.2.19 -fd
- B.2.20 -features=[v]
- B.2.21 -fexceptions, -fno-exceptions
- B.2.22 -flags
- B.2.23 -flteval[={any|2}]
- B.2.24 –fma[={none|fused}]
- B.2.25 –fno-semantic-interposition,
–fsemantic-interposition
- B.2.26 -fnonstd
- B.2.27 -fns[={no|yes}]
- B.2.28 -fopenmp
- B.2.29 -fPIC
- B.2.30 -fpic
- B.2.31 -fprecision=p
- B.2.32 -fround=r
- B.2.33 -fshort-enums, -fno-short-enums
- B.2.34 -fsimple[=n]
- B.2.35 -fsingle
- B.2.36 -fstore
- B.2.37 -ftrap=t[,t...]
- B.2.38 -fvisibility
- B.2.39 -G
- B.2.40 -g
- B.2.41 -g[n]
- B.2.42 -gz[=cmp-type]
- B.2.43 -H
- B.2.44 -h
name
- B.2.45 -I[-|dir]
- B.2.46 -i
- B.2.47 –include
filename
- B.2.48 -KPIC
- B.2.49 -Kpic
- B.2.50 -keeptmp
- B.2.51 -Ldir
- B.2.52 -lname
- B.2.53 -library=sunperf
- B.2.54 –m32|–m64
- B.2.55 -mc
- B.2.56 -misalign
- B.2.57 -misalign2
- B.2.58 -mr[,string]
- B.2.59 -mt[={yes|no}]
- B.2.60 -native
- B.2.61 -nofstore
- B.2.62 -O
- B.2.63 -o
filename
- B.2.64 -P
- B.2.65 -p
- B.2.66 –pedantic{=[yes|no]}
- B.2.67 –preserve_argvalues[=simple|none|complete]
- B.2.68 –Qoption
phase option[,option..]
- B.2.69 -Q[y|n]
- B.2.70 -qp
- B.2.71 -Rdir[:dir]
- B.2.72 -S
- B.2.73 -s
- B.2.74 -shared
- B.2.75 -staticlib=[no%]sunperf
- B.2.76 -std=value
- B.2.77 –temp=path
- B.2.78 -traceback[={%none|common|signals_list}]
- B.2.79 -Uname
- B.2.80 -V
- B.2.81 -v
- B.2.82 -Wc,arg
- B.2.83 -w
- B.2.84 -X[c|a|t|s]
- B.2.85 -x386
- B.2.86 -x486
- B.2.87 -Xlinker
arg
- B.2.88 -xaddr32[=yes|no]
- B.2.89 -xalias_level[=l]
- B.2.90 -xanalyze={code|%none}
- B.2.91 –xannotate[=yes|no]
- B.2.92 –xarch=isa
- B.2.93 -xatomic=a
- B.2.94 -xautopar
- B.2.95 -xbuiltin[=(%all|%default|%none)]
- B.2.96 -xCC
- B.2.97 -xc99[=o]
- B.2.98 -xcache[=c]
- B.2.99 -xchar[=o]
- B.2.100 -xchar_byte_order[=o]
- B.2.101 -xcheck[=o[,o]]
- B.2.102 -xchip[=c]
- B.2.103 -xcode[=v]
- B.2.104 -xcompress={[no%]debug}
- B.2.105 -xcompress_format=cmp-type
- B.2.106 -xcrossfile
- B.2.107 -xcsi
- B.2.108 -xdebugformat=dwarf
- B.2.109 -xdebuginfo=a[,a...]
- B.2.110 -xdepend=[yes|no]
- B.2.111 -xdryrun
- B.2.112 -xdumpmacros[=value[,value...]]
- B.2.113 -xe
- B.2.114 –xF[=v[,v...]]
- B.2.115 -xglobalize[={yes|no}]
- B.2.116 -xhelp=flags
- B.2.117 -xhwcprof
- B.2.118 -xinline=list
- B.2.119 –xinline_param=a[,a[,a]...]
- B.2.120 –xinline_report[=n]
- B.2.121 –xinstrument=[no%]datarace
- B.2.122 -xipo[=a]
- B.2.123 -xipo_archive=[a]
- B.2.124 -xipo_build=[yes|no]
- B.2.125 -xivdep[=p]
- B.2.126 -xjobs{=n|auto}
- B.2.127 -xkeep_unref[={[no%]funcs,[no%]vars}]
- B.2.128 -xkeepframe[=[%all,%none,name,no%name]]
- B.2.129 -xlang=language
- B.2.130 -xldscope={v}
- B.2.131 -xlibmieee
- B.2.132 -xlibmil
- B.2.133 -xlibmopt[={%none, archive,
shared}]
- B.2.134 -xlicinfo
- B.2.135 -xlinkopt[=level]
- B.2.136 -xloopinfo
- B.2.137 -xM
- B.2.138 -xM1
- B.2.139 -xMD
- B.2.140 -xMF
filename
- B.2.141 -xMMD
- B.2.142 -xMerge
- B.2.143 -xmaxopt[=v]
- B.2.144 -xmemalign=ab
- B.2.145 -xmodel=[a]
- B.2.146 -xnolib
- B.2.147 -xnolibmil
- B.2.148 -xnolibmopt
- B.2.149 –xnorunpath
- B.2.150 -xO[1|2|3|4|5]
- B.2.151 -xopenmp[={parallel|noopt|none}]
- B.2.152 -xP
- B.2.153 -xpagesize=n
- B.2.154 -xpagesize_heap=n
- B.2.155 -xpagesize_stack=n
- B.2.156 -xpatchpadding[={fix|patch|size}]
- B.2.157 -xpch=v
- B.2.158 -xpchstop=[file|<include>]
- B.2.159 –xpec[={yes|no}]
- B.2.160 -xpentium
- B.2.161 -xpg
- B.2.162 -xprefetch[=val[,val]]
- B.2.163 -xprefetch_auto_type=a
- B.2.164 -xprefetch_level=l
- B.2.165 -xprevise={yes|no}
- B.2.166 -xprofile=p
- B.2.167 -xprofile_ircache[=path]
- B.2.168 -xprofile_pathmap
- B.2.169 -xreduction
- B.2.170 -xregs=r[,r…]
- B.2.171 -xrestrict[=f]
- B.2.172 –xs[={yes|no}]
- B.2.173 –xsafe=mem
- B.2.174 –xsecure_code_analysis{=[yes|no]}
- B.2.175 -xsegment_align=n
- B.2.176 -xsfpconst
- B.2.177 -xspace
- B.2.178 -xstrconst
- B.2.179 -xtarget=t
- B.2.180 -xtemp=path
- B.2.181 -xthreadvar[=o]
- B.2.182 -xthroughput[={yes|no}]
- B.2.183 -xtime
- B.2.184 -xtransition
- B.2.185 -xtrigraphs[={yes|no}]
- B.2.186 -xunboundsym={yes|no}
- B.2.187 -xunroll=n
- B.2.188 -xustr={ascii_utf16_ushort|no}
- B.2.189 -xvector[=a]
- B.2.190 -xvis
- B.2.191 -xvpara
- B.2.192 -Yc,
dir
- B.2.193 -YA,
dir
- B.2.194 -YI,
dir
- B.2.195 -YP,
dir
- B.2.196 -YS,
dir
- B.3 Options Passed to the Linker
- B.4 User-Supplied Default Options File
- Appendix C Features of C 11
- Appendix D Features of C 99
- Appendix E Implementation-Defined ISO/IEC
C99 Behavior
- Appendix F Implementation-Defined ISO/IEC
C90 Behavior
- Appendix G ISO C Data Representations
- Appendix H Performance Tuning
- Appendix I Oracle Developer Studio C: Differences Between K&R C and ISO C
- Index
Index
Numbers and Symbols
- -###
-###
-###
- -#
-#
-#
- -a
-a
- -A
Aname[(tokens)]
- -ansi
-ansi
- -b
-b
- -B
-B[static|dynamic]
- -C
-C
filename
- -c
-c
-c
- -C
-C
- -d
-d[y|n]
- -dirout
-dirout=dir
- -E
-E
- -err
-err=warn
- -errchk
-errchk=l(, l)
- -errfmt
-errfmt[=[no%]error]
-errfmt=f
- -errhdr
-errhdr=h
- -erroff
-erroff[=t]
-erroff=tag(,
tag)
- -errsecurity
-errsecurity=level
- -errshort
-errshort[=i]
- -errtags
-errtags[=a]
-errtags=a
- -errwarn
-errwarn[=t]
-errwarn=t
- -F
-F
- -fast
-fast
- -fd
-fd
-fd
- -features
-features=[v]
- -flags
-flags
- -flagsrc
-flagsrc=file
- -flteval
-flteval[={any|2}]
- -fns
-fns[={no|yes}]
- -fopenmp
-fopenmp
- -fprecision
-fprecision=p
- -fround
-fround=r
- -fsimple
-fsimple[=n]
- -fsingle
-fsingle
- -fstore
-fstore
- -ftrap
-ftrap=t[,t...]
- -G
-G
- -g
-g
- -gn
-g[n]
- -h
-h
name
-h
- -H
-H
- -I
-I[-|dir]
-Idir
- -i
-i
- -include
include
filename
- -k
-k
- -keeptmp
-keeptmp
- -L
-Ldir
-Ldir
- -l
-lname
-lx
- -library=sunperf
-library=sunperf
- -m
-m
- -mc
-mc
- -mr
-mr[,string]
- -n
-n
- -native
-native
- -nofstore
-nofstore
- -o
-o
filename
-ox
- -O
-O
- -p
-p
- -P
-P
- -pedantic
–pedantic{=[yes|no]}
- -preserve_argvalues
–preserve_argvalues[=simple|none|complete]
- -Q
-Q[y|n]
- -qp
-qp
- -R
-Rdir[:dir]
-Rfile
- -s
-s
-s
- -S
-S
- -shared
-shared
- -tempdir, compiler option
–temp=path
- -u
-u
- -U
-Uname
- -V
-V
- -v
-v
-v
- -V
-V
- -W
-Wc,arg
-Wfile
- -w
-w
- -x
-x
- -X
-X[c|a|t|s]
- -Xalias_level
-Xalias_level[=l]
- -xalias_level
-xalias_level[=l]
- -xanalyze, compiler option
-xanalyze={code|%none}
- -xarch=isa, compiler option
–xarch=isa
- -xautopar
-xautopar
- -xbuiltin
-xbuiltin[=(%all|%default|%none)]
- -Xc99
-Xc99[=o]
- -xc99
-xc99[=o]
- -XCC
-XCC=a
- -xCC
-xCC
- -xchar
-xchar[=o]
- -xchar_byte_order
-xchar_byte_order[=o]
- -xcheck
-xcheck[=o[,o]]
- -xchip
-xchip[=c]
- -xcode
-xcode[=v]
- -xcompress=debug
- -gz with no sub-option
-gz[=cmp-type]
- -xcsi
-xcsi
- -xdebugformat
-xdebugformat=dwarf
- -xdebuginfo
-xdebuginfo=a[,a...]
- -xdepend
-xdepend=[yes|no]
- -xdryrun
-xdryrun
- -xe
-xe
- -xF
xF[=v[,v...]]
- -xglobalize
-xglobalize[={yes|no}]
- -xhelp
-xhelp=flags
- -xhwcprof
-xhwcprof
- -xinline
-xinline=list
- -xinline_param
xinline_param=a[,a[,a]...]
- -xinline_report
xinline_report[=n]
- -xipo
-xipo[=a]
- -xipo_archive
-xipo_archive=[a]
- -xipo_build
-xipo_build=[yes|no]
- -xivdep, compiler option
-xivdep[=p]
- -xjobs
-xjobs{=n|auto}
- -Xkeeptmp
-Xkeeptmp=a
- -xlang
-xlang=language
- -xldscope
-xldscope={v}
- -xlibmieee
-xlibmieee
- -xlibmil
-xlibmil
- -Xlinker, compiler option
-Xlinker
arg
- -xlinkopt
-xlinkopt[=level]
- -xloopinfo
-xloopinfo
- -xM1
-xM1
- -xM
-xM
- -xmaxopt
-xmaxopt[=v]
- -xmemalign
-xmemalign=ab
- -xMerge
-xMerge
- -xMF
-xMF
filename
- -xMMD
-xMMD
- -xmodel
-xmodel=[a]
- -xnolib
-xnolib
- -xnolibmil
-xnolibmil
- -xnolibmopt
-xnolibmopt
- -xO
-xO[1|2|3|4|5]
- -xopenmp
-xopenmp[={parallel|noopt|none}]
- -xP
-xP
- -xpagesize
-xpagesize=n
- -xpagesize_heap
-xpagesize_heap=n
- -xpagesize_stack
-xpagesize_stack=n
- -xpch
-xpch=v
- -xpchstop
-xpchstop=[file|<include>]
- -xpec
xpec[={yes|no}]
- -xpentium
-xpentium
- -xpg
-xpg
- -xprefetch
-xprefetch[=val[,val]]
- -xprefetch_auto_type
-xprefetch_auto_type=a
- -xprefetch_level
-xprefetch_level=l
- -xprofile
-xprofile=p
- -xprofile_ircache
-xprofile_ircache[=path]
- -xprofile_pathmap
-xprofile_pathmap
- -xpxpatchpadding, compiler option
-xpatchpadding[={fix|patch|size}]
- -xreduction
-xreduction
- -xregs
-xregs=r[,r…]
- -xrestrict
-xrestrict[=f]
- -xs
–xs[={yes|no}]
- -xsafe
–xsecure_code_analysis{=[yes|no]}
–xsafe=mem
- -xsfpconst
-xsfpconst
- -xspace
-xspace
- -xstrconst
-xstrconst
- -xtarget
-xtarget=t
- -Xtemp
-Xtemp=dir
- -xtemp
-xtemp=path
- -xthreadvar
-xthreadvar[=o]
- -xthreadvar, compiler option
-xthreadvar[=o]
- -xthroughput
-xthroughput[={yes|no}]
- -Xtime
-Xtime=a
- -xtime
-xtime
- -Xtransition
-Xtransition=a
- -xtransition
-xtransition
- -xtrigraphs
-xtrigraphs[={yes|no}]
- -xunboundsym
-xunboundsym={yes|no}
- -xunroll
-xunroll=n
- -Xustr
-Xustr={ascii_utf16_ushort|no}
- -xustr
-xustr={ascii_utf16_ushort|no}
- -xvector
-xvector[=a]
- -xvis
-xvis
- -xvpara
-xvpara
- -y
-y
- -Y
-Yc,
dir
- -YA
-YA,
dir
- -YI
-YI,
dir
- -YP
-YP,
dir
- -YS
-YS,
dir
- // comment indicators
- in C99
Commenting Code With //
- with -xCC
-xCC
- /tmp
TMPDIR
- __alignof keyword
__alignof__
- __asm keyword
__asm Keyword
__asm Keyword
- __DATE__
(6.8.8) The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are
not available:
(6.8.8) The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are
not available:
Preprocessing Directives (J.3.11)
- __func__
__func__ Support
- __global
Declaration Specifiers
- __hidden
Declaration Specifiers
- __symbolic
Declaration Specifiers
- __thread
Thread Local Storage Specifier
- __TIME__
(6.8.8) The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are
not available:
(6.8.8) The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are
not available:
Preprocessing Directives (J.3.11)
- _Alignas specifier
_Alignas specifier
- _Alignof operator
_Alignof operator
- _Atomic types
- size and alignment of
Size and Alignment of Atomic C Types
- _Exit function
Library Functions (J.3.12)
- _Noreturn
_Noreturn
- _Pragma
_Pragma
- _Restrict
_Restrict Keyword
- _Static_assert
_Static_assert
A
- #assert
Aname[(tokens)]
Assertions
- abort function
Library Functions (J.3.12)
- acomp (C compiler)
Components of the C Compilation System
- alias disambiguation
Example: Using a Pragma
Type-Based Alias Analysis
- alignment of structures
(6.5.2.1) The padding and alignment of members of
structures.
- any level alias disambiguation
Levels of Alias-Disambiguation
- arithmetic conversions
Usual Arithmetic Conversions
Usual Arithmetic Conversions
- array
- declarators per C99
Static and Other Type Qualifiers
Allowed in Array Declarators
- incomplete array types per C99
Flexible Array Members
- ascftime function
The -errsecurity Flags
- assembler
Components of the C Compilation System
- assembly in source
__asm Keyword
- assembly language templates
-xvis
- ATS: Automatic Tuning System
xpec[={yes|no}]
- attributes
Supported Attributes
B
- basic level alias disambiguation
Levels of Alias-Disambiguation
- behavior, implementation-defined
Days and Abbreviated Days of the Week
Implementation-Defined ISO/IEC
C90 Behavior
- binding, static vs. dynamic
-B[static|dynamic]
- binopt
xannotate[=yes|no]
- bit-field
- as impacted by transition to ISO C
Special Cases
- portability of constants assigned to
Portability Checks
- promotion of
Example: The Use of a Cast
- treating as signed or unsigned
(6.5.2.1) Whether a plain int bit-field
is treated as a signed int bit-field or as an unsigned
int bit-field:
- bits, in execution character set
(5.2.4.2.1) The number of bits in a character in
the execution character set:
- bitwise operations on signed integers
(6.3) The results of bitwise operations on signed
integers:
- buffering
(7.9.3) The characteristics of file buffering:
C
- C compiler
- changing default dirs searched for libraries
Option Syntax
- compilation modes and dependencies
Predefined Identifier __STDC__ on Oracle Solaris
- compiling a program
Option Syntax
Option Syntax
- components
Organization of the C Compilation System
- options passed to linker
Options Passed to the Linker
- C programming tools
C-Related Programming Tools
- C99
- // comment indicators
Commenting Code With //
- __func__ support
__func__ Support
- _Pragma
_Pragma
- array declarator
Static and Other Type Qualifiers
Allowed in Array Declarators
- flexible array members
Flexible Array Members
- FLT_EVAL_METHOD
Precision of Floating Point Evaluators
- idempotent qualifiers
Idempotent Qualifiers
- implicit function declaration in
Disallowed Implicit int and Implicit
Function Declarations
- inline function specifier
inline Functions
- list of keywords
C99 Keywords
- mixed declarations and code
Mixed Declarations and Code
- Oracle Developer Studio compiler implementation of
Implementation-defined Behavior (J.3 )
- type declaration in for loop
Declaration in for-Loop Statement
- type specifier requirement
Declarations Using Implicit int
- variable length arrays
Variable Length Arrays (VLA):
- cache, as used by optimizer
-xcache[=c]
- calloc function
Library Functions (J.3.12)
- case statements
Statements (G.3.12)
- cc command-line options
-xlibmopt[={%none, archive,
shared}]
cc Options
- -###
-###
- -#
-#
- -A
Aname[(tokens)]
- -ansi
-ansi
- -B
-B[static|dynamic]
- -C
-C
- -c
-c
- -d
-G
-d[y|n]
- interaction with -G
-G
- -E
-E
- -errfmt
-errfmt[=[no%]error]
- -erroff
-erroff[=t]
- -errshort
-errshort[=i]
- -errtags
-errtags[=a]
- -errwarn
-errwarn[=t]
- -fast
-fast
- -fd
-fd
- -features
-features=[v]
- -flags
-flags
- -flteval
-flteval[={any|2}]
- -fma
- as part of -fast expansion
-fast Expansion Flags
- -fns
-fns[={no|yes}]- as part of -fast expansion
-fast Expansion Flags
- -fopenmp
-fopenmp
- -fprecision
-fprecision=p
- -fprecision
- interaction with FLT_EVAL_METHOD
FLT_EVAL_METHOD Values
- -fround
-fround=r
- -fsimple
-fsimple[=n]- as part of -fast expansion
-fast Expansion Flags
- -fsingle
-fsingle- as part of -fast expansion
-fast Expansion Flags
- interaction with FLT_EVAL_METHOD
FLT_EVAL_METHOD Values
- -fstore
-fstore
- -ftrap
-ftrap=t[,t...]
- -G
-G
- -g
-g
- -gn
-g[n]
- -H
-H
- -h
-h
name
- -I
-I[-|dir]
- -i
-i
- -include
include
filename
- -keeptmp
-keeptmp
- -KPIC
-KPIC
- -Kpic
-Kpic
- -L
-Ldir
- -l
-lname
- -library=sunperf
-library=sunperf
- -mc
-mc
- -mr
-mr[,string]
- -mt
-mt[={yes|no}]
- -native
-native
- -nofstore
-nofstore- as part of -fast expansion
-fast Expansion Flags
- -O
-O
- -o
-o
filename
- -P
-P
- -pedantic
–pedantic{=[yes|no]}
- -preserve_argvalues
–preserve_argvalues[=simple|none|complete]
- -Q
-Q[y|n]
- -Qoption
–Qoption
phase option[,option..]
- -qp
-qp
- -R
-Rdir[:dir]
- -S
-S
- -s
-s
- -shared
-shared
- -std
-std=value
- -temp
–temp=path
- -traceback
-traceback[={%none|common|signals_list}]
- -U
-Uname
- -V
-V
- -v
-v
- -W
-Wc,arg
- -w
-w
- -X
-X[c|a|t|s]- interaction with FLT_EVAL_METHOD
FLT_EVAL_METHOD Values
- -xaddr32
-xaddr32[=yes|no]
- -xalias_level
-xalias_level[=l]- as part of -fast expansion
-fast Expansion Flags
- examples
Example: Using a Pragma
Examples of Memory Reference Constraints
- explanation
Introduction to Type-Based Analysis
- -xannotate
xannotate[=yes|no]
- -xatomic
-xatomic=a
- -xautopar
-xautopar
- -xbuiltin
-xbuiltin[=(%all|%default|%none)]- as part of -fast expansion
-fast Expansion Flags
- -xc99
-xc99[=o]
- -xCC
-xCC
- -xchar
-xchar[=o]
- -xchar_byte_order
-xchar_byte_order[=o]
- -xcheck
-xcheck[=o[,o]]
- -xchip
-xchip[=c]
- -xcode
-xcode[=v]
- -xcompress
-xcompress_format=cmp-type
-xcompress={[no%]debug}
- -xcsi
-xcsi
- -xdebugformat
-xdebugformat=dwarf
- -xdebuginfo
-xdebuginfo=a[,a...]
- -xdepend
-xdepend=[yes|no]
- -xdryrun
-xdryrun
- -xdumpmacros
-xdumpmacros[=value[,value...]]
- -xe
-xe
- -xF
xF[=v[,v...]]
- -xglobalize
-xglobalize[={yes|no}]
- -xhelp
-xhelp=flags
- -xhwcprof
-xhwcprof
- -xinline
-xinline=list
- -xinline_param
xinline_param=a[,a[,a]...]
- -xinline_report
xinline_report[=n]
- -xipo
-xipo[=a]
- -xipo_archive
-xipo_archive=[a]
- -xipo_build
-xipo_build=[yes|no]
- -xjobs
-xjobs{=n|auto}
- -xkeepframe
-xkeepframe[=[%all,%none,name,no%name]]
- -xlang
-xlang=language
- -xldscope
-xldscope={v}
Linker Scoping Specifiers
- -xlibmieee
-xlibmieee
- -xlibmil
-xlibmil- as part of -fast expansion
-fast Expansion Flags
- -xlibmopt
- as part of -fast expansion
-fast Expansion Flags
- -xlinkopt
-xlinkopt[=level]- interaction with -G
-xlinkopt[=level]
- -xloopinfo
-xloopinfo
- -xM1
-xM1
- -xM
-xM
- -xmaxopt
-xmaxopt[=v]- interaction with -xO
-xmaxopt[=v]
- -xMD
-xMD
- -xmemalign
-xmemalign=ab- as part of -fast expansion
-fast Expansion Flags
- -xMerge
-xMerge
- -xMF
-xMF
filename
- -xMMD
-xMMD
- -xmodel
-xmodel=[a]
- -xnolib
-xnolib
- -xnolibmil
-xnolibmil
- -xnolibmopt
-xnolibmopt
- -xO
-xO[1|2|3|4|5]- interaction with -xmaxopt
-xO[1|2|3|4|5]
- -xopenmp
-xopenmp[={parallel|noopt|none}]
- -xP
-xP
- -xpagesize
-xpagesize=n
- -xpagesize_heap
-xpagesize_heap=n
- -xpagesize_stack
-xpagesize_stack=n
- -xpch
-xpch=v
- -xpchstop
-xpchstop=[file|<include>]
- -xpec
xpec[={yes|no}]
- -xpentium
-xpentium
- -xpg
-xpg
- -xprefetch
-xprefetch[=val[,val]]
- -xprefetch_auto_type
-xprefetch_auto_type=a
- -xprefetch_level
-xprefetch_level=l
- -xprevise
-xprevise={yes|no}
- -xprofile
-xprofile=p
- -xprofile_ircache
-xprofile_ircache[=path]
- -xprofile_pathmap
-xprofile_pathmap
- -xreduction
-xreduction
- -xregs
-xregs=r[,r…]
- -xrestrict
-xrestrict[=f]
- -xs
–xs[={yes|no}]
- -xsafe
–xsafe=mem
- -xsecure_code_analysis
–xsecure_code_analysis{=[yes|no]}
- -xsegment_align
-xsegment_align=n
- -xsfpconst
-xsfpconst
- -xspace
-xspace
- -xstrconst
-xstrconst
- -xtarget
-xtarget=t
- -xtemp
-xtemp=path
- -xthroughput
-xthroughput[={yes|no}]
- -xtime
-xtime
- -xtransition
-xtransition- warning for trigraphs
Trigraph Sequences
- -xtrigraphs
-xtrigraphs[={yes|no}]
- -xunboundsym
-xunboundsym={yes|no}
- -xunroll
-xunroll=n
- -xustr
-xustr={ascii_utf16_ushort|no}
- -xvector
-xvector[=a]
- -xvis
-xvis
- -xvpara
-xvpara
- -Y
-Yc,
dir
- -YA
-YA,
dir
- -YI
-YI,
dir
- -YP
-YP,
dir
Option Syntax
- -YS
-YS,
dir
- cftime function
The -errsecurity Flags
- cg (code generator)
Components of the C Compilation System
- char
- signedness of
-xchar[=o]
- character
- bits in set
(5.2.4.2.1) The number of bits in a character in
the execution character set:
- decimal point
(7.1.1) The decimal-point character:
- mapping set
Characters (G.3.4)
- multibyte, shift status
(5.2.1.2) The shift states used for the encoding
of multibyte characters:
- set, collation sequence
(7.11.4.4) The collation sequence of the execution
character set:
- single-character character-constant
(6.8.1) Whether the value of a single-character character
constant in a constant expression that controls conditional inclusion matches
the value of the same character constant in the execution character set:
- source and execution of set
(5.2.1) The members of the source and execution character
sets, except as explicitly specified in the Standard:
- space
(7.9.2) Whether space characters that are written
out to a text stream immediately before a new-line character appear when read
in:
- testing of sets
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- clock function
(7.12.2.1) The era for the clock function
Library Functions (J.3.12)
- code generator
Components of the C Compilation System
- code optimization
- by using -fast
-fast
- optimizer
Components of the C Compilation System
- with -xO
-xO[1|2|3|4|5]
- comments
- preventing removal by preprocessor
-C
- using // by issuing -xCC
-xCC
- using // in C99
Commenting Code With //
- compatibility options
-X[c|a|t|s]
- compiler commentary in object file, reading with er_src utility
-xbuiltin[=(%all|%default|%none)]
- computed goto
Labels as Values
- consistency checks by lint
Consistency Checks
- const
Single Compilation Compatibility
- const
const and volatile
- constants
- promotion of integral
Integral Constants
- specific to Oracle Developer Studio C ISO C
Character Constants
- specific to Oracle Developer Studio ISO C
Constants
- conversions
Usual Arithmetic Conversions
Usual Arithmetic Conversions
- integers
(6.2.1.2) The result of converting an integer to
a shorter signed integer, or the result of converting an unsigned integer
to a signed integer of equal length, if the value cannot be represented:
- cool tools URL
xpec[={yes|no}]
- coverage analysis (tcov)
-xprofile=p
- cpp compiler option
- -gz
-gz[=cmp-type]
- cpp (C preprocessor)
Components of the C Compilation System
- creat function
The -errsecurity Flags
- cscope
Command-Line Syntax for Editors
cscope:
Interactively Examining a C Program
cscope:
Interactively Examining a C Program
- command-line use
Command-Line Options
Command-Line Options
Step 2: Invoke the cscope Program
Step 2: Invoke the cscope Program
- editing source files
Command-Line Syntax for Editors
Command-Line Syntax for Editors
Step 4: Edit the Code
Step 4: Edit the Code
Step 1: Set Up the Environment
Step 1: Set Up the Environment
- environment setup
Command-Line Syntax for Editors
Step 1: Set Up the Environment
Step 1: Set Up the Environment
- environment variables
View Paths
View Paths
- searching source files
Commands for Use After an Initial Search
Step 3: Locate the Code
Step 1: Set Up the Environment
The cscope Process
The cscope Process
- usage examples
Changing the Value of a Variable
Examples
Step 4: Edit the Code
Basic Use
D
- #define
-Dname[(arg[,arg])][=expansion]
- data reordering
xF[=v[,v...]]
- data types
- long long
long long Data Type
- unsigned long long
long long Data Type
- date and time formats
(7.12.3.5) The formats for time and date:
- dbx tool
- link debug information from object files into executable
–xs[={yes|no}]
- symbol table information for
-g[n]
-g
- debug compress
-xcompress_format=cmp-type
- debugger data format
-xdebugformat=dwarf
- debugging information, removing
-s
- decimal-point character
(7.1.1) The decimal-point character:
- declaration specifiers
- __global
Declaration Specifiers
- __hidden
Declaration Specifiers
- __symbolic
Declaration Specifiers
- __thread
Thread Local Storage Specifier
- declarators
Declarators (G.3.11)
- default
- compiler behavior
-X[c|a|t|s]
- handling and SIGILL
(7.7.1.1) Whether the default handling is reset if
the SIGILL signal is received by a handler specified to
the signal function:
- locale
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- default dirs searched for libraries
Option Syntax
- diagnostics, format
(5.1.1.3) Identification of diagnostics:
- directives See
pragmas
- domain errors, math functions
(7.5.1) The values returned by the mathematics functions
on domain errors:
- dwarf debugger-data format
-xdebugformat=dwarf
- dynamic linking
-d[y|n]
E
- #error
Warnings and Errors
- edit, source files See
cscope
- EDITOR
Command-Line Syntax for Editors
Step 1: Set Up the Environment
- elfdump
The -xcode Flags
- ellipsis notation
Compatible Function Types
Functions With Varying Arguments
Mixing Considerations
- environment variable
- EDITOR as used by cscope
Command-Line Syntax for Editors
Step 1: Set Up the Environment
- LANG
- in C90
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- in C99
Locale-specific Behavior (J.4)
Standard Alphabetic Escape Sequence Unique Values
- LC_ALL
- in C90
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- in C99
Standard Alphabetic Escape Sequence Unique Values
- LC_CTYPE
- in C90
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- in C99
Standard Alphabetic Escape Sequence Unique Values
- OMP_NUM_THREADS
Environment Variables
- PARALLEL
Environment Variables
- SOMP_TACKSIZE
Environment Variables
- SUN_PROFDATA
SUN_PROFDATA
- SUN_PROFDATA_DIR
SUN_PROFDATA_DIR
- SUNW_MP_WARN
Environment Variables
- TERM as used by cscope
Step 1: Set Up the Environment
- TMPDIR
TMPDIR
- TZ
(7.12.1) The local time zone and Daylight Savings
Time:
- VPATH as used by cscope
Step 1: Set Up the Environment
- er_src utility
-xbuiltin[=(%all|%default|%none)]
- ERANGE
(7.5.1) Whether the mathematics functions set the integer expression errno to the value of the macro ERANGE on underflow range errors:
- ERANGE macro
Library Functions (J.3.12)
- errno
- C98 implementation of
(7.5.1) Whether the mathematics functions set the integer expression errno to the value of the macro ERANGE on underflow range errors:
- header file
Names Safe to Use
Names Reserved for Expansion
- impact of -fast on
-fast
-fast
- impact of -xbuiltin on
-xbuiltin[=(%all|%default|%none)]
- impact of -xlibmieee on
-xlibmieee
- impact of -xlibmil on
-xlibmil
- impact of finalization functions on
fini
- impact of initialization functions on
init
- preserving value of
Preserving the Value of errno
- errno
- setting value to ERANGE on underflow
Library Functions (J.3.12)
Library Functions (J.3.12)
Library Functions (J.3.12)
- error messages
(5.1.1.3) Identification of diagnostics:- adding prefix "error\
- " to
-errfmt[=[no%]error]
- controlling length for a type mismatch
-errshort[=i]
- suppressing in lint
-erroff=tag(,
tag)
- exec function
The -errsecurity Flags
- expressions, grouping and evaluation in
The As If Rule
Grouping and Evaluation in Expressions
F
- fbe (assembler)
Components of the C Compilation System
- fclose function
Library Functions (J.3.12)
- fegetexceptflag function
Library Functions (J.3.12)
- feraiseexcept function
Library Functions (J.3.12)
- fgetc function
The -errsecurity Flags
- fgetpos function
Library Functions (J.3.12)
- files
- temporary
TMPDIR
- filters for lint
lint Filters
lint Filters
- float.h
- in C90
FLT_EVAL_METHOD Values
- macros defined in
Architecture (J.3.13)
- floating point
Floating-Point (G.3.6)- gradual underflows
Floating Point, Nonstandard Mode
- nonstop
Floating Point, Nonstandard Mode
- representations
(6.1.2.5) The representations and sets of values
of the various types of floating-point numbers:
- truncation
(6.2.1.4) The direction of truncation or rounding
when a floating- point number is converted to a narrower floating-point number:
(6.2.1.3) The direction of truncation when an integral
number is converted to a floating-point number that cannot exactly represent
the original value:
- values
(6.1.2.5) The representations and sets of values
of the various types of floating-point numbers:
- FLT_EVAL_METHOD
- evaluation format in C99
Precision of Floating Point Evaluators
- impact on accuracy of library functions
Floating point (J.3.6)
- impact on float_t and double_t
Library Functions (J.3.12)
- non-standard negative values of
Floating point (J.3.6)
- fmod function
Library Functions (J.3.12)
- fopen function
The -errsecurity Flags
- for loop that contains a type declaration
Declaration in for-Loop Statement
- fprintf function
(7.9.6.1) The output for %p conversion
in the fprintf function:
Library Functions (J.3.12)
- free-standing environments
Compiling in Free-Standing Environments
- free function
Library Functions (J.3.12)
- fscanf function
(7.9.6.2) The input for %p conversion
in the fscanf function:
Library Functions (J.3.12)
- fsetpos function
Library Functions (J.3.12)
- ftell function
Library Functions (J.3.12)
- function
Library Functions (J.3.12)- _Exit
Library Functions (J.3.12)
- abort
Library Functions (J.3.12)
- ascftime
The -errsecurity Flags
- calloc
Library Functions (J.3.12)
- cftime
The -errsecurity Flags
- clock
(7.12.2.1) The era for the clock function
Library Functions (J.3.12)
- creat
The -errsecurity Flags
- declaration specifier
Linker Scoping Specifiers
- exec
The -errsecurity Flags
- fclose
Library Functions (J.3.12)
- fegetexceptflag
Library Functions (J.3.12)
- feraiseexcept
Library Functions (J.3.12)
- fgetc
The -errsecurity Flags
- fgetpos
Library Functions (J.3.12)
- fmod
(7.5.6.4) Whether a domain error occurs or zero is
returned when the fmod function has a second argument of
zero:
Library Functions (J.3.12)
- fopen
The -errsecurity Flags
- fprintf
(7.9.6.1) The output for %p conversion
in the fprintf function:
Library Functions (J.3.12)
- free
Library Functions (J.3.12)
- fscanf
(7.9.6.2) The input for %p conversion
in the fscanf function:
Library Functions (J.3.12)
- fsetpos
Library Functions (J.3.12)
- ftell
Library Functions (J.3.12)
- fwprintf
Library Functions (J.3.12)
- fwscanf
Library Functions (J.3.12)
- getc
The -errsecurity Flags
- getenv
Semantics of signal Function Signals
- gets
The -errsecurity Flags
- getutxent
Note: Derived Types That Have Grown in Size
- ilogb
Library Functions (J.3.12)
- ilogbf
Library Functions (J.3.12)
- ilogbl
Library Functions (J.3.12)
- implicit declaration of
Disallowed Implicit int and Implicit
Function Declarations
- isalnum
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- isalpha
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
Locale-specific Behavior (J.4)
- isatty
Environment (J.3.2)
- iscntrl
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- islower
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- isprint
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- isupper
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- iswalpha
Locale-specific Behavior (J.4)
- iswctype
Days and Abbreviated Days of the Week
- main
Environment (J.3.2)
- malloc
Library Functions (J.3.12)
- printf
Library Functions (J.3.12)
- prototypes
Mixing Considerations
New-Style Function Prototypes
Consistency Checks
- prototypes, lint checks for
lint Libraries
- realloc
Library Functions (J.3.12)
- remove
(7.9.4.1) The effect of the remove function
on an open file:
Library Functions (J.3.12)
- rename
(7.9.4.2) The effect if a file with the new name
exists prior to a call to the rename function:
Library Functions (J.3.12)
- reordering
xF[=v[,v...]]
- scanf
The -errsecurity Flags
- setlocale
Library Functions (J.3.12)
- signal
Environment (J.3.2)
- sizeof
sizeof( ) Is an Unsigned long
- stat
The -errsecurity Flags
- strerror
Locale-specific Behavior (J.4)
- strftime
Library Functions (J.3.12)
- strlcpy
The -errsecurity Flags
- strtod
Library Functions (J.3.12)
- strtof
Library Functions (J.3.12)
- strtold
Library Functions (J.3.12)
- system
Library Functions (J.3.12)
Semantics of signal Function Signals
- towctrans
Days and Abbreviated Days of the Week
- using varying argument lists
Functions With Varying Arguments
Functions With Varying Arguments
- wait3
Library Functions (J.3.12)
- wait
Library Functions (J.3.12)
- waitid
Library Functions (J.3.12)
- waitpid
Library Functions (J.3.12)
- wcsftime
Library Functions (J.3.12)
- wcstod
Library Functions (J.3.12)
- wcstof
Library Functions (J.3.12)
- wcstold
Library Functions (J.3.12)
- fwprintf function
Library Functions (J.3.12)
- fwscanf function
Library Functions (J.3.12)
G
- getc function
The -errsecurity Flags
- getenv function
Semantics of signal Function Signals
- gets function
The -errsecurity Flags
- getutxent function
Note: Derived Types That Have Grown in Size
- gradual underflows
Floating Point, Nonstandard Mode
H
- header files
- float.h in C90
FLT_EVAL_METHOD Values
- format for #include directives
How to Specify Include Files
- how to include
How to Specify Include Files
How to Specify Include Files
- Intel MMX intrinsics declarations
Compiler Support for Intel MMX and Extended x86 Platform Intrinsics
- list of standard headers
Standard Headers
- standard place
How to Specify Include Files
How to Specify Include Files
- sunmedia_intrin.h
Compiler Support for Intel MMX and Extended x86 Platform Intrinsics
- with lint
Using lint
Using lint
- heap, setting page size for
-xpagesize=n
I
- #include, adding header files with
How to Specify Include Files
- idempotent qualifier in C99
Idempotent Qualifiers
- ilogb function
Library Functions (J.3.12)
- ilogbf function
Library Functions (J.3.12)
- ilogbl function
Library Functions (J.3.12)
- implementation-defined behavior
Days and Abbreviated Days of the Week
Implementation-Defined ISO/IEC
C90 Behavior
- incomplete types
Examples: Incomplete Types
Incomplete Types
- inline expansion templates
-xnolibmil
-xlibmil
- inline function specifier for C99
inline Functions
- inlining
-xlibmil
- integers
(6.3.7) The result of a right shift of a negative-valued
signed integral type:
Integers (G.3.5)
- integral constants, promotion of
Integral Constants
- interactive device
(5.1.2.3) What constitutes an interactive device:
- internationalization
New Functions
Internationalization
C Language Features
Multibyte Characters and Wide Characters
- interprocedural analysis pass
-xipo[=a]
- intrinsics, Intel MMX
Compiler Support for Intel MMX and Extended x86 Platform Intrinsics
- ipo (C compiler)
Components of the C Compilation System
- iropt (code optimizer)
Components of the C Compilation System
- isalnum function
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- isalpha function
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
Locale-specific Behavior (J.4)
- isatty function
Environment (J.3.2)
- iscntrl function
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- islower function
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- ISO C vs. K&R C
-X[c|a|t|s]
-X[c|a|t|s]
- ISO/IEC 9899:
- 1999 Programming Language C
Features of C 99
Standards Conformance
- 2011 Programming Language C
Features of C 11
- ISO/IEC 9899:1990 standard
C-Compiler Implementation-Specific Information
- ISO/IEC 9899:1999 standard
C-Compiler Implementation-Specific Information
- ISO/IEC 9899:2011 standard
C-Compiler Implementation-Specific Information
- isprint function
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- isupper function
(7.3.1) The sets of characters tested for by the isalnum, isalpha, iscntrl, islower, isprint, and isupper functions:
- iswalpha function
Locale-specific Behavior (J.4)
- iswctype function
Days and Abbreviated Days of the Week
J
- ja_JP.PCK locale
-xcsi
K
- K&R C vs. ISO C
-X[c|a|t|s]
-X[c|a|t|s]
- keywords
__asm Keyword- list for C99
C99 Keywords
L
- LANG environment variable
- in C90
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- in C99
Locale-specific Behavior (J.4)
Standard Alphabetic Escape Sequence Unique Values
- layout level alias disambiguation
Levels of Alias-Disambiguation
- LC_ALL environment variable
- in C90
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- in C99
Standard Alphabetic Escape Sequence Unique Values
- LC_CTYPE environment variable
- in C90
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- in C99
Standard Alphabetic Escape Sequence Unique Values
- ld (C compiler)
Components of the C Compilation System
- libfast.a
libfast.a Library (SPARC)
- libraries
- building shared libraries
The -xcode Flags
- default dirs searched by cc
Option Syntax
- intrinsic name
-h
name
- libfast.a
libfast.a Library (SPARC)
- lint
lint Libraries
- llib-lx.ln
lint Libraries
- renaming shared
-h
name
- shared or non shared
-B[static|dynamic]
- specifying dynamic or static links
-B[static|dynamic]
- sun_prefetch.h
-xprefetch Flags
- library bindings
-B[static|dynamic]
- limit of memory allocation on stack
Storage Allocation
- limits.h
- macros defined in
Architecture (J.3.13)
- link, static vs. dynamic
-d[y|n]
- link-time optimization
-xlinkopt[=level]
- link-time options, list of
Compile-Time and Link-Time Options
- linker
- options received from compiler
Options Passed to the Linker
- specifying dynamic or static linking in
-d[y|n]
- suppressing linking with
-c
- lint
lint Overview- basic mode
- invoking
Using lint
- consistency checks
Consistency Checks
- diagnostics
Questionable Constructs
Diagnostics Performed by lint
- directives
lint Directives
Directives
- filters
lint Filters
lint Filters
- header files, finding
Using lint
- how lint examines code
Using lint
- introduction to
lint Source
Code Checker
- libraries
lint Libraries
- lint command-line options
- -###
-###
- -#
-#
- -a
-a
- -b
-b
- -C
-C
filename
- -c
-c
- -dirout
-dirout=dir
- -err=warn
-err=warn
- -errchk
-errchk=l(, l)
- -errfmt
-errfmt=f
- -errhdr
-errhdr=h
- -erroff
-erroff=tag(,
tag)
- -errsecurity
-errsecurity=level
- -errtags
-errtags=a
- -errwarn
-errwarn=t
- -F
-F
- -fd
-fd
- -flagsrc
-flagsrc=file
- -h
-h
- -I
-Idir
- -k
-k
- -L
-Ldir
- -l
-lx
- -m
-m
- -n
-n
- -o
-ox
- -p
-p
- -R
-Rfile
- -s
-s
- -u
-u
- -V
-V
- -v
-v
- -W
-Wfile
- -x
-x
- -Xalias_level
-Xalias_level[=l]
- -Xc99
-Xc99[=o]
- -XCC
-XCC=a
- -Xkeeptmp
-Xkeeptmp=a
- -Xtemp
-Xtemp=dir
- -Xtime
-Xtime=a
- -Xtransition
-Xtransition=a
- -Xustr
-Xustr={ascii_utf16_ushort|no}
- -y
-y
- LINT_OPTIONS
Using lint
- messages
- formats of
lint Message Formats
lint Message Formats
- message ID (tag), identifying
Options to Suppress Messages
-errtags=a
- suppressing
Options to Suppress Messages
- overview
- introduced
lint Overview
- portability checks
Portability Checks
Portability Checks
- predefinition
Assertions
- questionable constructs
Questionable Constructs
Questionable Constructs
- LINT_OPTIONS environment variable
Using lint
- llib-lx.ln library
lint Libraries
- local time zone
(7.12.1) The local time zone and Daylight Savings
Time:
- locale
New Functions
Locales
Locales
- behavior
Locale-Specific Behavior (G.4)
- default
(6.1.3.4) The current locale used to convert multibyte
characters into corresponding wide characters (codes) for a wide character
constant:
- ja_JP.PCK
-xcsi
- use of non-conforming
-xcsi
- long double
- passing in ISO C
32-Bit SPARC
- long int
Usual Arithmetic Conversions
- long long
Usual Arithmetic Conversions
long long Data Type
- arithmetic promotions
Usual Arithmetic Conversions
- passing
Registers Used by x86 Functions to Return Types
(-m32)
32-Bit SPARC
- representation of
Representation of long (-m64) and long long (both -m32 and -m64)
- returning
32-Bit SPARC
- suffix
Data Type Suffixes
- value preserving
Data Type Suffixes
- loops
-xdepend=[yes|no]
M
- macro expansion
Macro Replacement
- macros
- __DATE__
(6.8.8) The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are
not available:
Preprocessing Directives (J.3.11)
- __TIME__
(6.8.8) The definitions for __DATE__ and __TIME__ when, respectively, the date and time of translation are
not available:
Preprocessing Directives (J.3.11)
- ERANGE
Library Functions (J.3.12)
- FLT_EVAL_METHOD
Library Functions (J.3.12)
Precision of Floating Point Evaluators
- NULL
Library Functions (J.3.12)
- those specified infloat.h
Architecture (J.3.13)
- those specified inlimits.h
Architecture (J.3.13)
- those specified instdint.h
Architecture (J.3.13)
- main function
Environment (J.3.2)
- main, semantics of rags
(5.1.2.2.1) Semantics of arguments to main:
- makefile dependencies
-xM
- malloc function
Library Functions (J.3.12)
- man pages, accessing
Man Pages
- math functions, domain errors
(7.5.1) The values returned by the mathematics functions
on domain errors:
- mbarrier.h
Memory-Barrier Intrinsics
- mcs (C compiler)
Components of the C Compilation System
- memory allocation on the stack
Storage Allocation
- memory barrier intrinsics
Memory-Barrier Intrinsics
- message ID (tag)
-errtags[=a]
-erroff[=t]
- messages
- error
(5.1.1.3) Identification of diagnostics:
- mixed-language linking
- -xlang
-xlang=language
- mode, compiler
-X[c|a|t|s]
- MP C
Parallelizing C Code
- multibyte characters and wide characters
C Language Features
Multibyte Characters and Wide Characters
- multimedia types, handling of
-xvis
- multiprocessing
Parallelizing C Code- -xjobs
-xjobs{=n|auto}
- multithreading
-mt[={yes|no}]
N
- newline, terminating
(7.9.2) Whether the last line of a text stream requires
a terminating new-line character:
- nonstop
- floating-point arithmetic
Floating Point, Nonstandard Mode
- null characters not appended to data
(7.9.2) The number of null characters that may be
appended to data written to a binary stream:
- NULL macro
Library Functions (J.3.12)
- NULL, value of
(7.1.6) The null pointer constant to which the macro NULL expands:
O
- object file
- linking with ld
-c
- producing object file for each source file
-c
- reading compiler commentary with er_src utility
-xbuiltin[=(%all|%default|%none)]
- suppressing removal of
-c
- obsolete options, list of
Obsolete Options
- OMP_NUM_THREADS
Environment Variables
- OMP_STACKSIZE environment variable
Environment Variables
- OpenMP
- -xopenmp command
-xopenmp[={parallel|noopt|none}]
- how to compile for
Parallelizing Using OpenMP
- optimization
- -fast and
-fast
- -xipo and
-xipo[=a]
- -xO and
-xO[1|2|3|4|5]
- at link time
-xlinkopt[=level]
- for SPARC
Performance Tuning
- optimizer
Components of the C Compilation System
- pragma opt and
opt
- with -xmaxopt
-xmaxopt[=v]
- options
- lint
-y
- options, command-line See Also
cc command-line options- alphabetical reference
cc Options
- grouped by functionality
Options Summarized by Function
- lint
lint Command-Line Options
P
- padding of structures
(6.5.2.1) The padding and alignment of members of
structures.
- page size, setting for stack or heap
-xpagesize=n
- PARALLEL
Environment Variables
- parallelization
- See Also
OpenMP
Parallelizing C Code
- checking for properly parallelized loops with -xvpara
-xvpara
- environment variables for
Environment Variables
- finding parallelized loops with -xloopinfo
-xloopinfo
- specifying OpenMP pragmas with -xopenmp
-xopenmp[={parallel|noopt|none}]
- turning on reduction recognition with -xreduction
-xreduction
- turning on with -xautopar for multiple processors
-xautopar
- pass, name and version of each
-V
- PEC: Portable Executable Code
xpec[={yes|no}]
- Pentium
-xtarget Expansions on x86
- performance
- optimizing for SPARC
Performance Tuning
- optimizing with -fast
-fast
- optimizing with-xO
-xO[1|2|3|4|5]
- portability checks performed by lint
Portability Checks
Portability Checks
- portability, of code
Portability Checks
Portability Checks
- POSIX threads
-mt[={yes|no}]
- postopt (C compiler)
Components of the C Compilation System
- pragmas
Using Pragmas for Finer Control
Pragmas
- #pragma alias
#pragma alias (type, type [, type]…)
- #pragma alias_level
#pragma alias_level level (list)
- #pragma align
align
- #pragma c99
c99
- #pragma does_not_read_global_data
does_not_read_global_data
- #pragma does_not_return
does_not_return
- #pragma does_not_write_global_data
does_not_write_global_data
- #pragma dumpmacros
dumpmacros
- #pragma end_dumpmacros
end_dumpmacros
- #pragma error_messages
error_messages
- #pragma fini
fini
- #pragma hdrstop
hdrstop
- #pragma ident
ident
- #pragma init
init
- #pragma inline
inline
- #pragma int_to_unsigned
int_to_unsigned
- #pragma may_not_point_to
#pragma may_not_point_to (pointer, variable [, variable]…)
- #pragma may_point_to
#pragma may_point_to (pointer, variable [, variable]…)
- #pragma must_have_frame
must_have_frame
- #pragma no_inline
inline
- #pragma no_side_effect
opt
no_side_effect
- #pragma noalias
#pragma noalias (pointer, pointer [, pointer]…)
#pragma noalias (type, type [, type]…)
- #pragma nomemorydepend
nomemorydepend
- #pragma opt
opt
- #pragma pack
pack
- #pragma pipeloop
pipeloop
- #pragma rarely_called
rarely_called
- #pragma redefine_extname
redefine_extname
- #pragma returns_new_memory
returns_new_memory
- #pragma unknown_control_flow
unknown_control_flow
- #pragma unroll
unroll
- #pragma warn_missing_parameter_info
warn_missing_parameter_info
- #pragma weak
weak
- preassertions for -Aname
Aname[(tokens)]
- precompiled-header file
-xpch=v
- prefetch
-xprefetch[=val[,val]]
- preprocessing
Token Pasting
Tokenization and Preprocessing
- directives
Preprocessing Directives (G.3.13)
-Dname[(arg[,arg])][=expansion]
How to Specify Include Files
How to Specify Include Files
Predefined Identifier __STDC__ on Oracle Solaris
- how to preserve comments
-C
- predefined names
Predefined Identifier __STDC__ on Oracle Solaris
Predefined Names
- stringizing
Using Strings
- token pasting
Token Pasting
- preserving signedness of chars
-xchar[=o]
- printf function
Library Functions (J.3.12)
- printing
(5.2.2) The direction of printing:
Printing long long Data Types
- profiling
- -xprofile
-xprofile=p
- programming tools for C
C-Related Programming Tools
- promotion
Example: Integral Constants
Promotions: Unsigned Versus Value Preserving
- bit-fields
Example: The Use of a Cast
- default arguments
Mixing Considerations
- integral constants
Integral Constants
- unsigned versus value preserving
Some Background History
Q
- qualifiers
Qualifiers (G.3.10)
R
- readme file
C Readme File
- realloc function
Library Functions (J.3.12)
- remove function
(7.9.4.1) The effect of the remove function
on an open file:
Library Functions (J.3.12)
- removing symbolic debugging information
-s
- rename function
(7.9.4.2) The effect if a file with the new name
exists prior to a call to the rename function:
Library Functions (J.3.12)
- renaming shared libraries
-h
name
- reordering functions and data
xF[=v[,v...]]
- representation
- floating point
(6.1.2.5) The representations and sets of values
of the various types of floating-point numbers:
- integers
(6.1.2.5) The representations and sets of values
of the various types of integers:
- reserved names
Names Safe to Use
Standard Headers and Reserved Names
- for expansion
Names Reserved for Expansion
- for implementation use
Names Reserved for Implementation Use
- guidelines for choosing
Names Safe to Use
- restrict keyword
- as part of supported C99 features
C99 Keywords
- as recognized by -Xs
Loop With Two Pointers
- as type qualifier in parallelized code
Loop With Two Pointers
- right shift
(6.3.7) The result of a right shift of a negative-valued
signed integral type:
- rounding behavior
Floating Point, Nonstandard Mode
S
- scanf function
The -errsecurity Flags
- search, source files See
cscope
- setlocale function
Library Functions (J.3.12)
- setlocale(3C)
New Functions
setlocale() Function
- shared libraries, naming
-h
name
- signal
(7.7.1.1) Whether the default handling is reset if
the SIGILL signal is received by a handler specified to
the signal function:
(7.7.1.1) The set of signals for the signal function:
- signal function
Environment (J.3.2)
- signed
(6.2.1.1) Whether a plain char has
the same range of values as signed char or unsigned
char:
- signedness of chars
-xchar[=o]
- sizeof function
sizeof( ) Is an Unsigned long
- slave thread default setting for OMP_STACKSIZE
Environment Variables
- Solaris threads
-mt[={yes|no}]
- source files
- checking with lint
lint Filters
- editing See
cscope
- locating
(6.8.2) The method for locating includable source
files:
- searching See
cscope
- space characters
(7.9.2) Whether space characters that are written
out to a text stream immediately before a new-line character appear when read
in:
- ssbd (C compiler)
Components of the C Compilation System
- stack
- memory allocation maximum
Storage Allocation
- setting page size for
-xpagesize=n
- standards conformance
C-Compiler Implementation-Specific Information
Standards Conformance
- stat function
The -errsecurity Flags
- static linking
-d[y|n]
- std
-std=value
- std level alias disambiguation
Levels of Alias-Disambiguation
- stdint.h
- macros defined in
Architecture (J.3.13)
- storage allocation for types
Storage Allocation
- streams
(7.9.2) Whether the last line of a text stream requires
a terminating new-line character:
- strerror function
Locale-specific Behavior (J.4)
- strftime function
Library Functions (J.3.12)
- strict level alias disambiguation
Levels of Alias-Disambiguation
- string literals in text segment
-xstrconst
- strlcpy function
The -errsecurity Flags
- strong level alias disambiguation
Levels of Alias-Disambiguation
- strtod function
Library Functions (J.3.12)
- strtof function
Library Functions (J.3.12)
- strtold function
Library Functions (J.3.12)
- structure
- alignment
(6.5.2.1) The padding and alignment of members of
structures.
- padding
(6.5.2.1) The padding and alignment of members of
structures.
- sun_prefetch.h
-xprefetch Flags
- SUN_PROFDATA
- definition
SUN_PROFDATA
- SUN_PROFDATA_DIR
- definition
SUN_PROFDATA_DIR
- SUNW_MP_WARN environment variable
Environment Variables
- symbol declaration specifier
Linker Scoping Specifiers
- symbolic debugging information, removing
-s
- system function
Library Functions (J.3.12)
Semantics of signal Function Signals
T
- tcov
- with -xprofile
-xprofile=p
- Temporary files
TMPDIR
- TERM environment variable as used by cscope
Step 1: Set Up the Environment
- text
- segment and string literals
-xstrconst
- stream
(7.9.2) Whether the last line of a text stream requires
a terminating new-line character:
- thread local storage of variables
Thread Local Storage Specifier
- threads See
parallelization
- time and date formats
(7.12.3.5) The formats for time and date:
- TMPDIR environment variable
TMPDIR
TMPDIR
- tokens
Token Pasting
Tokenization and Preprocessing
- tools for programming with C
C-Related Programming Tools
- towctrans function
Days and Abbreviated Days of the Week
- traceback
-traceback[={%none|common|signals_list}]
- trigraph sequences
ISO C Translation Phases
- type-based alias-disambiguation
Example: Using a Pragma
Type-Based Alias Analysis
- types
- compatible and composite
Composite Types
Compatible and Composite Types
- const and volatile qualifier
Examples of volatile Usage
const and volatile
- declaration in for loop
Declaration in for-Loop Statement
- declarations and code
Mixed Declarations and Code
- incomplete
Examples: Incomplete Types
Incomplete Types
- specifier requirement in declaration
Declarations Using Implicit int
- storage allocation for
Storage Allocation
- TZ
(7.12.1) The local time zone and Daylight Savings
Time:
U
- ube (C compiler)
Components of the C Compilation System
- Universal Character Names (UCN)
Universal Character Names (UCN)
- unsigned long long
long long Data Type
- unsigned preserving (promotion)
Some Background History
- unsigned
(6.2.1.1) Whether a plain char has
the same range of values as signed char or unsigned
char:
- using assembly in source
__asm Keyword
V
- value
- floating point
(6.1.2.5) The representations and sets of values
of the various types of floating-point numbers:
- integers
(6.1.2.5) The representations and sets of values
of the various types of integers:
- value preserving (promotion)
Some Background History
- varargs(5)
Mixing Considerations
- variable declaration specifier
Linker Scoping Specifiers
- variable length arrays in C99
Variable Length Arrays (VLA):
- variable, thread-local storage specifier
Thread Local Storage Specifier
- viable prefix
The Viable Prefix
- VIS Software Developers Kit
-xvis
- volatile
- explanation of keyword and usage
Type Qualifiers in Derived Types
- volatile
- compatible declarations with
Single Compilation Compatibility
- definition and examples
Examples of volatile Usage
Examples of volatile Usage
- explanation of keyword and usage
const and volatile
- in C90
(6.5.5.3) What constitutes an access to an object
that has volatile-qualified type:
- VPATH environment variable
Step 1: Set Up the Environment
W
- #warning
Warnings and Errors
- wait3 function
Library Functions (J.3.12)
- wait function
Library Functions (J.3.12)
- waitid function
Library Functions (J.3.12)
- waitpid function
Library Functions (J.3.12)
- warning messages
(5.1.1.3) Identification of diagnostics:
- wcsftime function
Library Functions (J.3.12)
- wcstod function
Library Functions (J.3.12)
- wcstof function
Library Functions (J.3.12)
- wcstold function
Library Functions (J.3.12)
- weak level alias disambiguation
Levels of Alias-Disambiguation
- whole-program optimizations
-xipo[=a]
- wide character constants
C Language Features
C Language Features
- wide characters
C Language Features
Wide Characters
- wide string literals
C Language Features
C Language Features
- write on text stream
(7.9.3) Whether a write on a text stream causes the
associated file to be truncated beyond that point:
Z
- zero-length file
(7.9.3) Whether a zero-length file actually exists: