2019-09-05 01:57:56 +03:00
|
|
|
# Copyright (c) Microsoft Corporation.
|
|
|
|
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
|
|
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# https://releases.llvm.org/11.0.0/tools/clang/docs/ClangFormatStyleOptions.html
|
2019-09-05 01:57:56 +03:00
|
|
|
|
|
|
|
---
|
|
|
|
# Language: Cpp
|
|
|
|
BasedOnStyle: LLVM
|
|
|
|
# AccessModifierOffset: -2
|
|
|
|
AccessModifierOffset: -4
|
|
|
|
# AlignAfterOpenBracket: Align
|
|
|
|
AlignAfterOpenBracket: DontAlign
|
2019-11-08 01:43:51 +03:00
|
|
|
# AlignConsecutiveMacros: false
|
|
|
|
AlignConsecutiveMacros: true
|
2019-09-05 01:57:56 +03:00
|
|
|
# AlignConsecutiveAssignments: false
|
|
|
|
AlignConsecutiveAssignments: true
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# AlignConsecutiveBitFields: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# AlignConsecutiveDeclarations: false
|
|
|
|
# AlignEscapedNewlines: Right
|
|
|
|
AlignEscapedNewlines: Left
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# AlignOperands: Align
|
|
|
|
AlignOperands: AlignAfterOperator
|
2019-09-05 01:57:56 +03:00
|
|
|
# AlignTrailingComments: true
|
|
|
|
AlignTrailingComments: false
|
2019-11-08 01:43:51 +03:00
|
|
|
# AllowAllArgumentsOnNextLine: true
|
|
|
|
# AllowAllConstructorInitializersOnNextLine: true
|
2019-09-05 01:57:56 +03:00
|
|
|
# AllowAllParametersOfDeclarationOnNextLine: true
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# AllowShortEnumsOnASingleLine: true
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# AllowShortBlocksOnASingleLine: Never
|
2019-09-05 01:57:56 +03:00
|
|
|
# AllowShortCaseLabelsOnASingleLine: false
|
|
|
|
# AllowShortFunctionsOnASingleLine: All
|
|
|
|
AllowShortFunctionsOnASingleLine: Empty
|
2019-11-08 01:43:51 +03:00
|
|
|
# AllowShortLambdasOnASingleLine: All
|
|
|
|
# AllowShortIfStatementsOnASingleLine: Never
|
2019-09-05 01:57:56 +03:00
|
|
|
# AllowShortLoopsOnASingleLine: false
|
|
|
|
# AlwaysBreakAfterDefinitionReturnType: None
|
|
|
|
# AlwaysBreakAfterReturnType: None
|
|
|
|
# AlwaysBreakBeforeMultilineStrings: false
|
|
|
|
# AlwaysBreakTemplateDeclarations: MultiLine
|
2019-11-08 01:43:51 +03:00
|
|
|
AlwaysBreakTemplateDeclarations: Yes
|
2019-09-05 01:57:56 +03:00
|
|
|
# BinPackArguments: true
|
|
|
|
# BinPackParameters: true
|
|
|
|
# BraceWrapping:
|
2019-11-08 01:43:51 +03:00
|
|
|
# AfterCaseLabel: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# AfterClass: false
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# AfterControlStatement: Never
|
2019-09-05 01:57:56 +03:00
|
|
|
# AfterEnum: false
|
|
|
|
# AfterFunction: false
|
|
|
|
# AfterNamespace: false
|
|
|
|
# AfterObjCDeclaration: false
|
|
|
|
# AfterStruct: false
|
|
|
|
# AfterUnion: false
|
|
|
|
# AfterExternBlock: false
|
|
|
|
# BeforeCatch: false
|
|
|
|
# BeforeElse: false
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# BeforeLambdaBody: false
|
|
|
|
# BeforeWhile: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# IndentBraces: false
|
|
|
|
# SplitEmptyFunction: true
|
|
|
|
# SplitEmptyRecord: true
|
|
|
|
# SplitEmptyNamespace: true
|
|
|
|
# BreakBeforeBinaryOperators: None
|
|
|
|
BreakBeforeBinaryOperators: NonAssignment
|
|
|
|
# BreakBeforeBraces: Attach
|
|
|
|
# BreakBeforeInheritanceComma: false
|
|
|
|
# BreakInheritanceList: BeforeColon
|
|
|
|
# BreakBeforeTernaryOperators: true
|
|
|
|
# BreakConstructorInitializersBeforeComma: false
|
|
|
|
# BreakConstructorInitializers: BeforeColon
|
|
|
|
# BreakAfterJavaFieldAnnotations: false
|
|
|
|
# BreakStringLiterals: true
|
|
|
|
# ColumnLimit: 80
|
|
|
|
ColumnLimit: 120
|
|
|
|
# CommentPragmas: '^ IWYU pragma:'
|
|
|
|
# CompactNamespaces: false
|
|
|
|
# ConstructorInitializerAllOnOneLineOrOnePerLine: false
|
|
|
|
# ConstructorInitializerIndentWidth: 4
|
|
|
|
# ContinuationIndentWidth: 4
|
|
|
|
# Cpp11BracedListStyle: true
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# DeriveLineEnding: true
|
|
|
|
DeriveLineEnding: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# DerivePointerAlignment: false
|
|
|
|
# DisableFormat: false
|
|
|
|
# ExperimentalAutoDetectBinPacking: false
|
|
|
|
# FixNamespaceComments: true
|
|
|
|
# ForEachMacros:
|
|
|
|
# - foreach
|
|
|
|
# - Q_FOREACH
|
|
|
|
# - BOOST_FOREACH
|
|
|
|
# IncludeBlocks: Preserve
|
|
|
|
IncludeBlocks: Regroup
|
|
|
|
# IncludeCategories:
|
|
|
|
# - Regex: '^"(llvm|llvm-c|clang|clang-c)/'
|
|
|
|
# Priority: 2
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# SortPriority: 0
|
2019-09-05 01:57:56 +03:00
|
|
|
# - Regex: '^(<|"(gtest|gmock|isl|json)/)'
|
|
|
|
# Priority: 3
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# SortPriority: 0
|
2019-09-05 01:57:56 +03:00
|
|
|
# - Regex: '.*'
|
|
|
|
# Priority: 1
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# SortPriority: 0
|
2019-09-05 01:57:56 +03:00
|
|
|
IncludeCategories:
|
|
|
|
- Regex: '^<yvals(_core)?\.h>$'
|
|
|
|
Priority: 1
|
2019-10-09 03:12:08 +03:00
|
|
|
- Regex: '^<(Windows|userenv)\.h>$'
|
2019-09-05 01:57:56 +03:00
|
|
|
Priority: 3
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
SortPriority: 3
|
2019-09-05 01:57:56 +03:00
|
|
|
- Regex: '^<WinIoCtl\.h>$'
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
Priority: 3
|
|
|
|
SortPriority: 4
|
2020-06-24 09:45:44 +03:00
|
|
|
- Regex: '^<__.*\.hpp>$'
|
|
|
|
Priority: 2
|
|
|
|
- Regex: '\.hpp[>"]$'
|
|
|
|
Priority: 5
|
2019-09-05 01:57:56 +03:00
|
|
|
- Regex: '.*'
|
|
|
|
Priority: 2
|
|
|
|
# IncludeIsMainRegex: '(Test)?$'
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# IncludeIsMainSourceRegex: ''
|
2019-09-05 01:57:56 +03:00
|
|
|
# IndentCaseLabels: false
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# IndentCaseBlocks: false
|
|
|
|
IndentCaseBlocks: true
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# IndentGotoLabels: true
|
2019-09-05 01:57:56 +03:00
|
|
|
# IndentPPDirectives: None
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# IndentExternBlock: AfterExternBlock
|
2019-09-05 01:57:56 +03:00
|
|
|
# IndentWidth: 2
|
|
|
|
IndentWidth: 4
|
|
|
|
# IndentWrappedFunctionNames: false
|
|
|
|
IndentWrappedFunctionNames: true
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# InsertTrailingCommas: None
|
2019-09-05 01:57:56 +03:00
|
|
|
# JavaScriptQuotes: Leave
|
|
|
|
# JavaScriptWrapImports: true
|
|
|
|
# KeepEmptyLinesAtTheStartOfBlocks: true
|
|
|
|
# NOTE: MacroBlockBegin/MacroBlockEnd don't work with _CATCH_ALL.
|
|
|
|
# MacroBlockBegin: ''
|
|
|
|
# MacroBlockEnd: ''
|
|
|
|
# MaxEmptyLinesToKeep: 1
|
|
|
|
MaxEmptyLinesToKeep: 2
|
|
|
|
# NamespaceIndentation: None
|
|
|
|
NamespaceIndentation: All
|
|
|
|
# ObjCBinPackProtocolList: Auto
|
|
|
|
# ObjCBlockIndentWidth: 2
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# ObjCBreakBeforeNestedBlockParam: true
|
2019-09-05 01:57:56 +03:00
|
|
|
# ObjCSpaceAfterProperty: false
|
|
|
|
# ObjCSpaceBeforeProtocolList: true
|
|
|
|
# PenaltyBreakAssignment: 2
|
|
|
|
# PenaltyBreakBeforeFirstCallParameter: 19
|
|
|
|
# PenaltyBreakComment: 300
|
|
|
|
# PenaltyBreakFirstLessLess: 120
|
|
|
|
# PenaltyBreakString: 1000
|
|
|
|
# PenaltyBreakTemplateDeclaration: 10
|
|
|
|
# PenaltyExcessCharacter: 1000000
|
|
|
|
# PenaltyReturnTypeOnItsOwnLine: 60
|
|
|
|
# PointerAlignment: Right
|
|
|
|
PointerAlignment: Left
|
|
|
|
# ReflowComments: true
|
|
|
|
# SortIncludes: true
|
|
|
|
# SortUsingDeclarations: true
|
|
|
|
# SpaceAfterCStyleCast: false
|
|
|
|
SpaceAfterCStyleCast: true
|
2019-11-08 01:43:51 +03:00
|
|
|
# SpaceAfterLogicalNot: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# SpaceAfterTemplateKeyword: true
|
|
|
|
# SpaceBeforeAssignmentOperators: true
|
|
|
|
# SpaceBeforeCpp11BracedList: false
|
|
|
|
# SpaceBeforeCtorInitializerColon: true
|
|
|
|
# SpaceBeforeInheritanceColon: true
|
|
|
|
# SpaceBeforeParens: ControlStatements
|
|
|
|
# SpaceBeforeRangeBasedForLoopColon: true
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# SpaceInEmptyBlock: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# SpaceInEmptyParentheses: false
|
|
|
|
# SpacesBeforeTrailingComments: 1
|
|
|
|
# SpacesInAngles: false
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# SpacesInConditionalStatement: false
|
2019-09-05 01:57:56 +03:00
|
|
|
# SpacesInContainerLiterals: true
|
|
|
|
# SpacesInCStyleCastParentheses: false
|
|
|
|
# SpacesInParentheses: false
|
|
|
|
# SpacesInSquareBrackets: false
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# SpaceBeforeSquareBrackets: false
|
|
|
|
# Standard: Latest
|
2019-11-08 01:43:51 +03:00
|
|
|
# StatementMacros:
|
|
|
|
# - Q_UNUSED
|
|
|
|
# - QT_REQUIRE_VERSION
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# NOTE: _STD_BEGIN, _STD_END, etc. aren't macros for complete statements, but telling
|
|
|
|
# clang-format that they are produces the behavior that we want (with no block indentation).
|
2019-12-06 22:40:55 +03:00
|
|
|
StatementMacros:
|
|
|
|
- _STD_BEGIN
|
|
|
|
- _STD_END
|
|
|
|
- _STDEXT_BEGIN
|
|
|
|
- _STDEXT_END
|
|
|
|
- _EXTERN_C
|
|
|
|
- _END_EXTERN_C
|
|
|
|
- _EXTERN_C_UNLESS_PURE
|
|
|
|
- _END_EXTERN_C_UNLESS_PURE
|
2019-09-05 01:57:56 +03:00
|
|
|
# TabWidth: 8
|
Update .clang-format for Clang 10 (#1075)
* Remove unnecessary comments in ranges tests.
We taught clang-format how to sort like this automatically.
* Fix x86 compiler error in stljobs.h.
This never compiled for x86 where size_t and SIZE_T are different types.
* Update .clang-format for Clang 10.
AllowShortBlocksOnASingleLine changed from false/true to
Never/Empty/Always. We still want the default of Never, as Empty
appears to misbehave.
DeriveLineEnding was added, defaulting to true. We want to disable line
ending auto-detection.
SortPriority was added. Its documentation is difficult to understand,
but it can be used to group includes together while modifying their
otherwise-lexicographic ordering. Here, I'm using it to group WinSDK
includes together, while still sorting WinIoCtl.h last.
IncludeIsMainSourceRegex was added. This doesn't appear to be relevant
to us.
IndentGotoLabels was added. We've avoided goto.
SpaceInEmptyBlock was added. We prefer the default of no space.
SpacesInConditionalStatement was added. We definitely prefer the
default of no space.
SpaceBeforeSquareBrackets was added. Again, we definitely prefer the
default of no space.
The Standard option was overhauled. Previously, Cpp11 meant "use the
latest supported standard". That was confusing, so it has been
deprecated in favor of Latest.
UseCRLF was added. We currently use CRLF for all files. (Previously,
validate.cpp would detect LF files, but clang-format wouldn't fix
them.)
* In .clang-format, delete empty lines and move comment.
The empty lines were intended to make it easier to see customized
options, but they were actually making it harder to diff the default
config against our config.
Move the StatementMacros comment next to our customized settings,
and rewrap it.
* Reformat filesystem.cpp.
2020-07-27 21:38:12 +03:00
|
|
|
# UseCRLF: false
|
|
|
|
UseCRLF: true
|
2019-09-05 01:57:56 +03:00
|
|
|
# UseTab: Never
|
Toolset update: VS 2019 16.9 Preview 2 with Clang 11
* Fix #1471 by properly waiting for the Windows Driver Kit installation to finish.
* Update `azure-pipelines.yml` to use the new pool `StlBuild-2020-12-08`.
* Update `README.md` to mention Preview 2. (Its CMake and Ninja versions haven't changed,
and we don't directly mention the Clang version.)
* Update `yvals_core.h` to require Clang 11. (Note that MSVC's `_MSC_VER` is remaining `1928` for the 16.9 release.)
* Remove the workaround for LLVM-37556. (We were treating it as an uncommented perma-workaround, but I remembered.)
* Remove many workarounds in `P1502R1_standard_library_header_units`.
* Remove the VSO-1225825 workaround in `<iterator>` and `<ranges>`.
* Unrelated cleanup in `<valarray>`: `__cpp_aligned_new` implies `if constexpr`.
* Update the vcpkg submodule for Boost 1.74.0. This is just their latest commit.
* In `CMakeLists.txt`, require Boost 1.74.0. (This, combined with the toolset update,
implies that contributors will need to `git submodule update`, clean out the `vcpkg`
submodule with `git clean -x -d -f`, and then bootstrap vcpkg and build boost-math.)
* Simplify conditional operators in `seed_seq::generate`.
+ Thanks to @AlexGuteniev for suggesting extracting `_Off` and noticing
that `_Myvec[(_Kx - 1) % _Sx]` was unnecessarily complicated. Given `_Kx` in `[1, _Sx]`,
then `_Kx - 1` is in `[0, _Sx - 1]`, so `% _Sx` does nothing.
* Take advantage of clang-format 11. This sets `AlignOperands: AlignAfterOperator` and `IndentCaseBlocks: true`.
2020-12-03 05:19:14 +03:00
|
|
|
# WhitespaceSensitiveMacros:
|
|
|
|
# - STRINGIZE
|
|
|
|
# - PP_STRINGIZE
|
|
|
|
# - BOOST_PP_STRINGIZE
|
2019-09-05 01:57:56 +03:00
|
|
|
...
|