git: f53b5fe7865f - main - contrib/bc: merge from vendor release 5.3.3

From: Stefan Eßer <se_at_FreeBSD.org>
Date: Wed, 15 Jun 2022 09:56:30 UTC
The branch main has been updated by se:

URL: https://cgit.FreeBSD.org/src/commit/?id=f53b5fe7865f4e4240e40ba0f6345f81d337a823

commit f53b5fe7865f4e4240e40ba0f6345f81d337a823
Merge: 1f88394b7f35 3f739b0595b7
Author:     Stefan Eßer <se@FreeBSD.org>
AuthorDate: 2022-06-15 09:54:13 +0000
Commit:     Stefan Eßer <se@FreeBSD.org>
CommitDate: 2022-06-15 09:55:27 +0000

    contrib/bc: merge from vendor release 5.3.3
    
    This update fixes a build issue of release 5.3.2 on the FreeBSD base
    system.
    
    Merge commit '3f739b0595b7d6ac4bac9aaa1cae0910f11f92e2'
    
    MFC after:      2 weeks

 contrib/bc/.clang-format                           |  152 +
 contrib/bc/.clang-tidy                             |   43 +
 contrib/bc/NEWS.md                                 |   14 +
 contrib/bc/benchmarks/bc/add.bc                    |   21 -
 contrib/bc/benchmarks/bc/arrays.bc                 |   38 -
 contrib/bc/benchmarks/bc/arrays_and_constants.bc   |   38 -
 contrib/bc/benchmarks/bc/bitfuncs.bc               |   18 -
 contrib/bc/benchmarks/bc/constants.bc              |   41 -
 contrib/bc/benchmarks/bc/divide.bc                 |   26 -
 contrib/bc/benchmarks/bc/functions.bc              |   38 -
 contrib/bc/benchmarks/bc/irand_long.bc             |   12 -
 contrib/bc/benchmarks/bc/irand_short.bc            |    9 -
 contrib/bc/benchmarks/bc/lib.bc                    |   11 -
 contrib/bc/benchmarks/bc/multiply.bc               |   23 -
 contrib/bc/benchmarks/bc/postfix_incdec.bc         |   11 -
 contrib/bc/benchmarks/bc/power.bc                  |    2 -
 contrib/bc/benchmarks/bc/strings.bc                |   40 -
 contrib/bc/benchmarks/bc/subtract.bc               |   22 -
 contrib/bc/benchmarks/dc/modexp.dc                 |   42 -
 contrib/bc/include/version.h                       |    2 +-
 contrib/bc/manuals/bc.1.md.in                      | 2476 ----------
 contrib/bc/manuals/benchmarks.md                   |  673 ---
 contrib/bc/manuals/dc.1.md.in                      | 1452 ------
 contrib/bc/manuals/development.md                  | 5110 --------------------
 contrib/bc/manuals/header.txt                      |   27 -
 contrib/bc/manuals/header_bc.txt                   |    1 -
 contrib/bc/manuals/header_bcl.txt                  |    1 -
 contrib/bc/manuals/header_dc.txt                   |    1 -
 contrib/bc/manuals/release.md                      |   72 -
 contrib/bc/scripts/afl.py                          |  245 -
 contrib/bc/scripts/alloc.sh                        |   84 -
 contrib/bc/scripts/benchmark.sh                    |  159 -
 contrib/bc/scripts/bitfuncgen.c                    |  240 -
 contrib/bc/scripts/fuzz_prep.sh                    |   81 -
 contrib/bc/scripts/manpage.sh                      |  175 -
 contrib/bc/scripts/ministat.c                      |  675 ---
 contrib/bc/scripts/package.sh                      |  261 -
 contrib/bc/scripts/radamsa.sh                      |  133 -
 contrib/bc/scripts/radamsa.txt                     |   17 -
 contrib/bc/scripts/randmath.py                     |  421 --
 contrib/bc/scripts/release.sh                      |  811 ----
 contrib/bc/scripts/release_settings.txt            |   16 -
 contrib/bc/scripts/test_settings.sh                |   77 -
 contrib/bc/scripts/test_settings.txt               |   93 -
 contrib/bc/src/history.c                           |   34 +-
 contrib/bc/tests/fuzzing/bc_afl.yaml               |  125 -
 contrib/bc/tests/fuzzing/bc_afl_continue.yaml      |  122 -
 contrib/bc/tests/fuzzing/bc_inputs1/array.bc       |   60 -
 contrib/bc/tests/fuzzing/bc_inputs1/decimal.txt    |   30 -
 contrib/bc/tests/fuzzing/bc_inputs1/functions.bc   |    7 -
 contrib/bc/tests/fuzzing/bc_inputs1/len.bc         |   48 -
 contrib/bc/tests/fuzzing/bc_inputs1/lib10.txt      |    4 -
 contrib/bc/tests/fuzzing/bc_inputs1/lib12.txt      |    1 -
 contrib/bc/tests/fuzzing/bc_inputs1/lib2.txt       |   15 -
 contrib/bc/tests/fuzzing/bc_inputs1/lib3.txt       |    6 -
 contrib/bc/tests/fuzzing/bc_inputs1/lib6.txt       |    5 -
 contrib/bc/tests/fuzzing/bc_inputs2/bitfuncs.txt   |   42 -
 contrib/bc/tests/fuzzing/bc_inputs2/lib15.txt      |    1 -
 contrib/bc/tests/fuzzing/bc_inputs2/lib21.txt      |    1 -
 contrib/bc/tests/fuzzing/bc_inputs2/misc3.txt      |   12 -
 contrib/bc/tests/fuzzing/bc_inputs2/modulus.txt    |   27 -
 contrib/bc/tests/fuzzing/bc_inputs2/references.bc  |  408 --
 contrib/bc/tests/fuzzing/bc_inputs3/02.txt         |    1 -
 contrib/bc/tests/fuzzing/bc_inputs3/03.txt         |    2 -
 contrib/bc/tests/fuzzing/bc_inputs3/06.txt         |    1 -
 contrib/bc/tests/fuzzing/bc_inputs3/07.txt         |    8 -
 contrib/bc/tests/fuzzing/bc_inputs3/10.txt         |    1 -
 contrib/bc/tests/fuzzing/bc_inputs3/12.txt         |    2 -
 contrib/bc/tests/fuzzing/bc_inputs3/16.txt         |    1 -
 contrib/bc/tests/fuzzing/bc_inputs3/trunc.txt      |   15 -
 contrib/bc/tests/fuzzing/dc_inputs/01.txt          |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/02.txt          |    5 -
 contrib/bc/tests/fuzzing/dc_inputs/03.txt          |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/04.txt          |    9 -
 contrib/bc/tests/fuzzing/dc_inputs/05.txt          |    3 -
 contrib/bc/tests/fuzzing/dc_inputs/06.txt          |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/07.txt          |    3 -
 contrib/bc/tests/fuzzing/dc_inputs/08.txt          |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/09.txt          |    9 -
 contrib/bc/tests/fuzzing/dc_inputs/10.txt          |   11 -
 contrib/bc/tests/fuzzing/dc_inputs/11.txt          |    4 -
 contrib/bc/tests/fuzzing/dc_inputs/12.txt          |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/13.txt          |    7 -
 contrib/bc/tests/fuzzing/dc_inputs/14.txt          |    7 -
 contrib/bc/tests/fuzzing/dc_inputs/15.txt          |   11 -
 contrib/bc/tests/fuzzing/dc_inputs/16.txt          |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/17.txt          |   20 -
 contrib/bc/tests/fuzzing/dc_inputs/18.txt          |    3 -
 contrib/bc/tests/fuzzing/dc_inputs/20.txt          |    3 -
 contrib/bc/tests/fuzzing/dc_inputs/21.txt          |    5 -
 contrib/bc/tests/fuzzing/dc_inputs/22.txt          |   36 -
 contrib/bc/tests/fuzzing/dc_inputs/23.txt          |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/24.txt          |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/25.txt          |    6 -
 contrib/bc/tests/fuzzing/dc_inputs/26.txt          |  155 -
 contrib/bc/tests/fuzzing/dc_inputs/27.txt          |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/28.txt          |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/29.txt          |   13 -
 contrib/bc/tests/fuzzing/dc_inputs/30.txt          |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/abs.txt         |    7 -
 contrib/bc/tests/fuzzing/dc_inputs/add.txt         |   33 -
 contrib/bc/tests/fuzzing/dc_inputs/array.dc        |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/boolean.txt     |   80 -
 contrib/bc/tests/fuzzing/dc_inputs/decimal.txt     |   41 -
 contrib/bc/tests/fuzzing/dc_inputs/divide.txt      |   33 -
 contrib/bc/tests/fuzzing/dc_inputs/divmod.txt      |   64 -
 contrib/bc/tests/fuzzing/dc_inputs/else.dc         |    4 -
 contrib/bc/tests/fuzzing/dc_inputs/engineering.txt |   19 -
 contrib/bc/tests/fuzzing/dc_inputs/loop.dc         |    3 -
 contrib/bc/tests/fuzzing/dc_inputs/misc.txt        |    1 -
 contrib/bc/tests/fuzzing/dc_inputs/modexp.txt      |  103 -
 contrib/bc/tests/fuzzing/dc_inputs/modulus.txt     |   70 -
 contrib/bc/tests/fuzzing/dc_inputs/multiply.txt    |   42 -
 contrib/bc/tests/fuzzing/dc_inputs/places.txt      |   14 -
 contrib/bc/tests/fuzzing/dc_inputs/power.txt       |   36 -
 contrib/bc/tests/fuzzing/dc_inputs/quit.dc         |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/scientific.txt  |   55 -
 contrib/bc/tests/fuzzing/dc_inputs/shift.txt       |   42 -
 contrib/bc/tests/fuzzing/dc_inputs/sqrt.txt        |   14 -
 contrib/bc/tests/fuzzing/dc_inputs/stack_len.txt   |   15 -
 contrib/bc/tests/fuzzing/dc_inputs/stdin.txt       |  205 -
 contrib/bc/tests/fuzzing/dc_inputs/stream.dc       |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/strings.txt     |   51 -
 contrib/bc/tests/fuzzing/dc_inputs/subtract.txt    |   33 -
 contrib/bc/tests/fuzzing/dc_inputs/vars.txt        |    2 -
 contrib/bc/tests/fuzzing/dc_inputs/weird.dc        |    2 -
 126 files changed, 232 insertions(+), 15952 deletions(-)

diff --cc contrib/bc/.clang-format
index 000000000000,000000000000..845db62a72e6
new file mode 100644
--- /dev/null
+++ b/contrib/bc/.clang-format
@@@ -1,0 -1,0 +1,152 @@@
++---
++Language:        Cpp
++# BasedOnStyle:  LLVM
++AccessModifierOffset: 1
++AlignAfterOpenBracket: Align
++AlignConsecutiveAssignments: false
++AlignConsecutiveBitFields: true
++AlignConsecutiveDeclarations: false
++AlignConsecutiveMacros: false
++AlignEscapedNewlines: Left
++AlignOperands: Align
++AlignTrailingComments: true
++AllowAllArgumentsOnNextLine: false
++AllowAllConstructorInitializersOnNextLine: true
++AllowAllParametersOfDeclarationOnNextLine: false
++AllowShortBlocksOnASingleLine: Never
++AllowShortCaseLabelsOnASingleLine: false
++AllowShortEnumsOnASingleLine: false
++AllowShortFunctionsOnASingleLine: None
++AllowShortIfStatementsOnASingleLine: AllIfsAndElse
++AllowShortLambdasOnASingleLine: Empty
++AllowShortLoopsOnASingleLine: false
++AlwaysBreakAfterReturnType: All
++AlwaysBreakBeforeMultilineStrings: false
++AlwaysBreakTemplateDeclarations: true
++#AttributeMacros: []
++BinPackArguments: true
++BinPackParameters: true
++#BitFieldColonSpacing: Both
++BreakBeforeBraces: Custom
++BraceWrapping:
++  AfterCaseLabel:        true
++  AfterClass:            true
++  AfterControlStatement: true
++  AfterEnum:             true
++  AfterFunction:         true
++  AfterNamespace:        true
++  AfterObjCDeclaration:  true
++  AfterStruct:           true
++  AfterUnion:            true
++  AfterExternBlock:      true
++  BeforeCatch:           true
++  BeforeElse:            true
++  BeforeLambdaBody:      false
++  BeforeWhile:           true
++  IndentBraces:          false
++  SplitEmptyFunction:    false
++  SplitEmptyRecord:      false
++  SplitEmptyNamespace:   false
++BreakAfterJavaFieldAnnotations: true
++BreakBeforeBinaryOperators: None
++#BreakBeforeConceptDeclarations: true
++BreakBeforeInheritanceComma: false
++BreakBeforeTernaryOperators: false
++BreakConstructorInitializers: AfterColon
++BreakInheritanceList: AfterColon
++BreakStringLiterals: false
++ColumnLimit:     80
++CommentPragmas:  '^ IWYU pragma:'
++CompactNamespaces: false
++ConstructorInitializerAllOnOneLineOrOnePerLine: false
++ConstructorInitializerIndentWidth: 4
++ContinuationIndentWidth: 4
++Cpp11BracedListStyle: false
++DeriveLineEnding: false
++DerivePointerAlignment: false
++DisableFormat:   false
++ExperimentalAutoDetectBinPacking: false
++FixNamespaceComments: true
++ForEachMacros:
++  - foreach
++  - Q_FOREACH
++  - BOOST_FOREACH
++IncludeBlocks: Regroup
++IncludeCategories:
++  - Regex:           '^<(sys|arpa|net|netinet)/.*\.h>'
++    Priority:        2
++  - Regex:           '^<(args|bc|bcl|dc|file|history|lang|lex|library|num|opt|parse|program|rand|read|status|vector|version|vm)\.h>'
++    Priority:        3
++  - Regex:           '^<.*\.h>'
++    Priority:        0
++  - Regex:           '^<.*>'
++    Priority:        1
++IncludeIsMainRegex: '(Test)?$'
++IncludeIsMainSourceRegex: ''
++IndentCaseLabels: true
++IndentExternBlock: NoIndent
++IndentGotoLabels: false
++IndentPPDirectives: None
++#IndentPragmas: false
++#IndentRequires: true
++IndentWidth:     4
++IndentWrappedFunctionNames: false
++InsertTrailingCommas: None
++JavaImportGroups: []
++JavaScriptQuotes: Double
++JavaScriptWrapImports: true
++KeepEmptyLinesAtTheStartOfBlocks: false
++Language: Cpp
++MacroBlockBegin: ''
++MacroBlockEnd:   ''
++MaxEmptyLinesToKeep: 1
++NamespaceIndentation: None
++NamespaceMacros: []
++ObjCBinPackProtocolList: Always
++ObjCBlockIndentWidth: 4
++ObjCBreakBeforeNestedBlockParam: true
++ObjCSpaceAfterProperty: true
++ObjCSpaceBeforeProtocolList: true
++PenaltyBreakAssignment: 1000
++PenaltyBreakBeforeFirstCallParameter: 429496720
++PenaltyBreakComment: 300
++PenaltyBreakFirstLessLess: 42949672
++PenaltyBreakString: 10000
++PenaltyBreakTemplateDeclaration: 10
++PenaltyExcessCharacter: 42949672
++PenaltyIndentedWhitespace: 1
++PenaltyReturnTypeOnItsOwnLine: 60
++PointerAlignment: Left
++#RawStringFormats:
++# This is used to get spaces around a bitwise and operator.
++ReferenceAlignment: Middle
++ReflowComments:  true
++SortIncludes:    false
++SortUsingDeclarations: true
++SpaceAfterCStyleCast: true
++SpaceAfterLogicalNot: false
++SpaceAfterTemplateKeyword: true
++#SpaceAroundPointerQualifiers: Default
++SpaceBeforeAssignmentOperators: true
++SpaceBeforeCpp11BracedList: true
++SpaceBeforeCtorInitializerColon: true
++SpaceBeforeInheritanceColon: true
++SpaceBeforeParens: ControlStatements
++SpaceBeforeRangeBasedForLoopColon: true
++SpaceBeforeSquareBrackets: false
++SpaceInEmptyBlock: false
++SpaceInEmptyParentheses: false
++SpacesBeforeTrailingComments: 1
++SpacesInAngles:  false
++SpacesInContainerLiterals: true
++SpacesInCStyleCastParentheses: false
++SpacesInConditionalStatement: false
++SpacesInParentheses: false
++SpacesInSquareBrackets: false
++Standard:       Latest
++TabWidth:       4
++TypenameMacros: []
++UseCRLF:        false
++UseTab:         ForIndentation
++WhitespaceSensitiveMacros: []
++...
diff --cc contrib/bc/.clang-tidy
index 000000000000,04e13de763a2..04e13de763a2
mode 000000,100644..100644
--- a/contrib/bc/.clang-tidy
+++ b/contrib/bc/.clang-tidy