sconfig: Move (WEAK_)DEV_PTR from device.h to static.h
[coreboot.git] / .clang-format
blob47210ae1134b45c545ce260d766c29a36c63473b
1 # SPDX-License-Identifier: GPL-2.0-only
3 # clang-format configuration file. Intended for clang-format >= 16.
5 # For more information, see:
7 #   https://clang.llvm.org/docs/ClangFormat.html
8 #   https://clang.llvm.org/docs/ClangFormatStyleOptions.html
9 #   https://clang-format-configurator.site/
12 ---
13 Language:        Cpp
14 AccessModifierOffset: -4
15 AlignAfterOpenBracket: Align
16 AlignArrayOfStructures: Left
17 AlignConsecutiveAssignments:
18   Enabled:         false
19   AcrossEmptyLines: false
20   AcrossComments:  true
21   AlignCompound:   false
22   PadOperators:    true
23 AlignConsecutiveBitFields:
24   Enabled:         true
25   AcrossEmptyLines: false
26   AcrossComments:  false
27   AlignCompound:   false
28   PadOperators:    true
29 AlignConsecutiveDeclarations:
30   Enabled:         false
31   AcrossEmptyLines: false
32   AcrossComments:  false
33   AlignCompound:   false
34   PadOperators:    true
35 AlignConsecutiveMacros:
36   Enabled:         true
37   AcrossEmptyLines: false
38   AcrossComments:  false
39   AlignCompound:   false
40   PadOperators:    true
41 AlignEscapedNewlines: Left
42 AlignOperands:   Align
43 AlignTrailingComments:
44   Kind:            Always
45   OverEmptyLines:  0
46 AllowAllArgumentsOnNextLine: true
47 AllowAllParametersOfDeclarationOnNextLine: false
48 AllowShortBlocksOnASingleLine: Never
49 AllowShortCaseLabelsOnASingleLine: false
50 AllowShortEnumsOnASingleLine: true
51 AllowShortFunctionsOnASingleLine: None
52 AllowShortIfStatementsOnASingleLine: Never
53 AllowShortLambdasOnASingleLine: All
54 AllowShortLoopsOnASingleLine: false
55 AlwaysBreakAfterDefinitionReturnType: None
56 AlwaysBreakAfterReturnType: None
57 AlwaysBreakBeforeMultilineStrings: false
58 AlwaysBreakTemplateDeclarations: MultiLine
60 # git grep '^#define [^[:space:]]*__.*[^[:space:]]*__attribute__' | grep -v "vendorcode\|payloads\|util" | sed "s|.*:||;s|^#define \([^[:space:]]*__[^([:space:]]*\).*$|  - '\1'|" | LC_ALL=C sort -u
61 AttributeMacros:
62   - '__aligned'
63   - '__always_inline'
64   - '__always_unused'
65   - '__cpu_driver'
66   - '__fallthrough'
67   - '__maybe_unused'
68   - '__must_check'
69   - '__noreturn'
70   - '__packed'
71   - '__pci_driver'
72   - '__printf'
73   - '__weak'
74 BinPackArguments: true
75 BinPackParameters: true
76 BitFieldColonSpacing: Both
77 BraceWrapping:
78   AfterCaseLabel:  false
79   AfterClass:      false
80   AfterControlStatement: Never
81   AfterEnum:       false
82   AfterExternBlock: false
83   AfterFunction:   true
84   AfterNamespace:  true
85   AfterObjCDeclaration: false
86   AfterStruct:     false
87   AfterUnion:      false
88   BeforeCatch:     false
89   BeforeElse:      false
90   BeforeLambdaBody: false
91   BeforeWhile:     false
92   IndentBraces:    false
93   SplitEmptyFunction: true
94   SplitEmptyRecord: true
95   SplitEmptyNamespace: true
96 BreakAfterAttributes: Never
97 BreakAfterJavaFieldAnnotations: false
98 BreakArrays:     false
99 BreakBeforeBinaryOperators: None
100 BreakBeforeConceptDeclarations: Always
101 BreakBeforeBraces: Custom
102 BreakBeforeInlineASMColon: OnlyMultiline
103 BreakBeforeTernaryOperators: false
104 BreakConstructorInitializers: AfterColon
105 BreakInheritanceList: AfterColon
106 BreakStringLiterals: false
107 ColumnLimit:     96
108 CommentPragmas:  '^ IWYU pragma:'
109 CompactNamespaces: false
110 ConstructorInitializerIndentWidth: 8
111 ContinuationIndentWidth: 8
112 Cpp11BracedListStyle: true
113 DerivePointerAlignment: false
114 DisableFormat:   false
115 EmptyLineAfterAccessModifier: Never
116 EmptyLineBeforeAccessModifier: LogicalBlock
117 ExperimentalAutoDetectBinPacking: false
118 FixNamespaceComments: false
120 # git grep '^#define [^[:space:]]*for_each[^[:space:]]*(' | grep -v "vendorcode\|payloads\|util" | sed "s|.*:||;s|^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$|  - '\1'|" | LC_ALL=C sort -u
121 ForEachMacros:
122   - 'list_for_each'
124 # git grep -i '^#define \+if[^[:space:]]*(' | grep -v "vendorcode\|payloads\|util" | sed "s|.*:||;s|^#define \([^[:space:]]*if[^[:space:]]*\)(.*$|  - '\1'|I" | grep -v IFIX | LC_ALL=C sort -u
125 IfMacros:
126   - 'IF_CHANNEL_POPULATED'
127   - 'IF_DIMM_POPULATED'
128   - 'IF_RANK_POPULATED'
129   - 'IfBit0'
130 IncludeBlocks:   Preserve
131 IncludeIsMainSourceRegex: ''
132 IndentAccessModifiers: false
133 IndentCaseBlocks: false
134 IndentCaseLabels: false
135 IndentExternBlock: AfterExternBlock
136 IndentGotoLabels: false
137 IndentPPDirectives: None
138 IndentRequiresClause: true
139 IndentWidth:     8
140 IndentWrappedFunctionNames: false
141 InsertBraces:    false
142 InsertNewlineAtEOF: true
143 InsertTrailingCommas: None
144 IntegerLiteralSeparator:
145   Binary:          0
146   BinaryMinDigits: 0
147   Decimal:         0
148   DecimalMinDigits: 0
149   Hex:             0
150   HexMinDigits:    0
151 JavaScriptQuotes: Leave
152 JavaScriptWrapImports: true
153 KeepEmptyLinesAtTheStartOfBlocks: false
154 LambdaBodyIndentation: Signature
155 LineEnding:      LF
156 MacroBlockBegin: ''
157 MacroBlockEnd:   ''
158 MaxEmptyLinesToKeep: 1
159 NamespaceIndentation: None
160 ObjCBinPackProtocolList: Auto
161 ObjCBlockIndentWidth: 8
162 ObjCBreakBeforeNestedBlockParam: true
163 ObjCSpaceAfterProperty: true
164 ObjCSpaceBeforeProtocolList: true
165 PackConstructorInitializers: BinPack
166 PenaltyBreakAssignment: 10
167 PenaltyBreakBeforeFirstCallParameter: 30
168 PenaltyBreakComment: 10
169 PenaltyBreakFirstLessLess: 0
170 PenaltyBreakOpenParenthesis: 0
171 PenaltyBreakString: 10
172 PenaltyBreakTemplateDeclaration: 10
173 PenaltyExcessCharacter: 100
174 PenaltyIndentedWhitespace: 0
175 PenaltyReturnTypeOnItsOwnLine: 60
176 PointerAlignment: Right
177 PPIndentWidth:   -1
178 QualifierAlignment: Left
179 ReferenceAlignment: Pointer
180 ReflowComments:  false
181 RemoveBracesLLVM: false
182 RemoveSemicolon: false
183 RequiresClausePosition: OwnLine
184 RequiresExpressionIndentation: OuterScope
185 SeparateDefinitionBlocks: Leave
186 ShortNamespaceLines: 1
187 SortIncludes:    Never
188 SortJavaStaticImport: Before
189 SortUsingDeclarations: Never
190 SpaceAfterCStyleCast: false
191 SpaceAfterLogicalNot: false
192 SpaceAfterTemplateKeyword: true
193 SpaceAroundPointerQualifiers: Default
194 SpaceBeforeAssignmentOperators: true
195 SpaceBeforeCaseColon: false
196 SpaceBeforeCpp11BracedList: false
197 SpaceBeforeCtorInitializerColon: true
198 SpaceBeforeInheritanceColon: true
199 SpaceBeforeParens: ControlStatementsExceptControlMacros
200 SpaceBeforeParensOptions:
201   AfterControlStatements: true
202   AfterForeachMacros: false
203   AfterFunctionDefinitionName: false
204   AfterFunctionDeclarationName: false
205   AfterIfMacros:   false
206   AfterOverloadedOperator: false
207   AfterRequiresInClause: false
208   AfterRequiresInExpression: false
209   BeforeNonEmptyParentheses: false
210 SpaceBeforeRangeBasedForLoopColon: true
211 SpaceBeforeSquareBrackets: false
212 SpaceInEmptyBlock: false
213 SpaceInEmptyParentheses: false
214 SpacesBeforeTrailingComments: 1
215 SpacesInAngles:  Never
216 SpacesInConditionalStatement: false
217 SpacesInContainerLiterals: false
218 SpacesInCStyleCastParentheses: false
219 SpacesInLineCommentPrefix:
220   Minimum:         1
221   Maximum:         1
222 SpacesInParentheses: false
223 SpacesInSquareBrackets: false
224 Standard:        c++17
225 TabWidth:        8
226 UseTab:          ForContinuationAndIndentation