[PATCH] D12180: [clang-tidy] Use a python script instead of a shell script to run clang-tidy tests.

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 20 07:17:13 PDT 2015


aaron.ballman added a comment.

Yay! I'm really excited for this! Unfortunately, it fails all over the place on Windows. The errors are all in the form:

58>  ********************
58>  FAIL: Clang Tools :: clang-tidy/readability-simplify-bool-expr-chained-conditional-return.cpp (7280 of 23187)
58>  ******************** TEST 'Clang Tools :: clang-tidy/readability-simplify-bool-expr-chained-conditional-return.cpp' FAILED ********************
58>  Script:
58>  --
58>  $(dirname E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-simplify-bool-expr-chained-conditional-return.cpp)/check_clang_tidy.py E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-simplify-bool-expr-chained-conditional-return.cpp readability-simplify-boolean-expr E:\llvm\2015\tools\clang\tools\extra\test\clang-tidy\Output\readability-simplify-bool-expr-chained-conditional-return.cpp.tmp -config="{CheckOptions: [{key: "readability-simplify-boolean-expr.ChainedConditionalReturn", value: 1}]}" --
58>  --
58>  Exit Code: 127
58>
58>  Command Output (stdout):
58>  --
58>  Command 0: "$(dirname" "E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-simplify-bool-expr-chained-conditional-return.cpp)/check_clang_tidy.py" "E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-simplify-bool-expr-chained-conditional-return.cpp" "readability-simplify-boolean-expr" "E:\llvm\2015\tools\clang\tools\extra\test\clang-tidy\Output\readability-simplify-bool-expr-chained-conditional-return.cpp.tmp" "-config={CheckOptions: [{key: readability-simplify-boolean-expr.ChainedConditionalReturn, value: 1}]}" "--"
58>  Command 0 Result: 127
58>  Command 0 Output:
58>
58>
58>  Command 0 Stderr:
58>  '$(dirname': command not found
58>
58>
58>  --
58>
58>  ********************
58>  FAIL: Clang Tools :: clang-tidy/readability-identifier-naming.cpp (7281 of 23187)
58>  ******************** TEST 'Clang Tools :: clang-tidy/readability-identifier-naming.cpp' FAILED ********************
58>  Script:
58>  --
58>  $(dirname E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-identifier-naming.cpp)/check_clang_tidy.py E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-identifier-naming.cpp readability-identifier-naming E:\llvm\2015\tools\clang\tools\extra\test\clang-tidy\Output\readability-identifier-naming.cpp.tmp    -config='{CheckOptions: [      {key: readability-identifier-naming.AbstractClassCase, value: CamelCase},      {key: readability-identifier-naming.AbstractClassPrefix, value: 'A'},      {key: readability-identifier-naming.ClassCase, value: CamelCase},      {key: readability-identifier-naming.ClassPrefix, value: 'C'},      {key: readability-identifier-naming.ClassConstantCase, value: CamelCase},      {key: readability-identifier-naming.ClassConstantPrefix, value: 'k'},      {key: readability-identifier-naming.ClassMemberCase, value: CamelCase},      {key: readability-identifier-naming.ClassMethodCase, value: camelBack},      {key: readability-identifier-naming.ConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.ConstantSuffix, value: '_CST'},      {key: readability-identifier-naming.ConstexprFunctionCase, value: lower_case},      {key: readability-identifier-naming.ConstexprMethodCase, value: lower_case},      {key: readability-identifier-naming.ConstexprVariableCase, value: lower_case},      {key: readability-identifier-naming.EnumCase, value: CamelCase},      {key: readability-identifier-naming.EnumPrefix, value: 'E'},      {key: readability-identifier-naming.EnumConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.FunctionCase, value: camelBack},      {key: readability-identifier-naming.GlobalConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.GlobalFunctionCase, value: CamelCase},      {key: readability-identifier-naming.GlobalVariableCase, value: lower_case},      {key: readability-identifier-naming.GlobalVariablePrefix, value: 'g_'},      {key: readability-identifier-naming.InlineNamespaceCase, value: lower_case},      {key: readability-identifier-naming.LocalConstantCase, value: CamelCase},      {key: readability-identifier-naming.LocalConstantPrefix, value: 'k'},      {key: readability-identifier-naming.LocalVariableCase, value: lower_case},      {key: readability-identifier-naming.MemberCase, value: CamelCase},      {key: readability-identifier-naming.MemberPrefix, value: 'm_'},      {key: readability-identifier-naming.ConstantMemberCase, value: lower_case},      {key: readability-identifier-naming.PrivateMemberPrefix, value: '__'},      {key: readability-identifier-naming.ProtectedMemberPrefix, value: '_'},      {key: readability-identifier-naming.PublicMemberCase, value: lower_case},      {key: readability-identifier-naming.MethodCase, value: camelBack},      {key: readability-identifier-naming.PrivateMethodPrefix, value: '__'},      {key: readability-identifier-naming.ProtectedMethodPrefix, value: '_'},      {key: readability-identifier-naming.NamespaceCase, value: lower_case},      {key: readability-identifier-naming.ParameterCase, value: camelBack},      {key: readability-identifier-naming.ParameterPrefix, value: 'a_'},      {key: readability-identifier-naming.ConstantParameterCase, value: camelBack},      {key: readability-identifier-naming.ConstantParameterPrefix, value: 'i_'},      {key: readability-identifier-naming.ParameterPackCase, value: camelBack},      {key: readability-identifier-naming.PureFunctionCase, value: lower_case},      {key: readability-identifier-naming.PureMethodCase, value: camelBack},      {key: readability-identifier-naming.StaticConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.StaticVariableCase, value: camelBack},      {key: readability-identifier-naming.StaticVariablePrefix, value: 's_'},      {key: readability-identifier-naming.StructCase, value: lower_case},      {key: readability-identifier-naming.TemplateParameterCase, value: UPPER_CASE},      {key: readability-identifier-naming.TemplateTemplateParameterCase, value: CamelCase},      {key: readability-identifier-naming.TemplateUsingCase, value: lower_case},      {key: readability-identifier-naming.TemplateUsingPrefix, value: 'u_'},      {key: readability-identifier-naming.TypeTemplateParameterCase, value: camelBack},      {key: readability-identifier-naming.TypeTemplateParameterSuffix, value: '_t'},      {key: readability-identifier-naming.TypedefCase, value: lower_case},      {key: readability-identifier-naming.TypedefSuffix, value: '_t'},      {key: readability-identifier-naming.UnionCase, value: CamelCase},      {key: readability-identifier-naming.UnionPrefix, value: 'U'},      {key: readability-identifier-naming.UsingCase, value: lower_case},      {key: readability-identifier-naming.ValueTemplateParameterCase, value: camelBack},      {key: readability-identifier-naming.VariableCase, value: lower_case},      {key: readability-identifier-naming.VirtualMethodCase, value: UPPER_CASE},      {key: readability-identifier-naming.VirtualMethodPrefix, value: 'v_'},      {key: readability-identifier-naming.IgnoreFailedSplit, value: 0}    ]}' -- -std=c++11 -fno-delayed-template-parsing
58>  --
58>  Exit Code: 127
58>
58>  Command Output (stdout):
58>  --
58>  Command 0: "$(dirname" "E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-identifier-naming.cpp)/check_clang_tidy.py" "E:\llvm\llvm\tools\clang\tools\extra\test\clang-tidy\readability-identifier-naming.cpp" "readability-identifier-naming" "E:\llvm\2015\tools\clang\tools\extra\test\clang-tidy\Output\readability-identifier-naming.cpp.tmp" "-config={CheckOptions: [      {key: readability-identifier-naming.AbstractClassCase, value: CamelCase},      {key: readability-identifier-naming.AbstractClassPrefix, value: A},      {key: readability-identifier-naming.ClassCase, value: CamelCase},      {key: readability-identifier-naming.ClassPrefix, value: C},      {key: readability-identifier-naming.ClassConstantCase, value: CamelCase},      {key: readability-identifier-naming.ClassConstantPrefix, value: k},      {key: readability-identifier-naming.ClassMemberCase, value: CamelCase},      {key: readability-identifier-naming.ClassMethodCase, value: camelBack},      {key: readability-identifier-naming.ConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.ConstantSuffix, value: _CST},      {key: readability-identifier-naming.ConstexprFunctionCase, value: lower_case},      {key: readability-identifier-naming.ConstexprMethodCase, value: lower_case},      {key: readability-identifier-naming.ConstexprVariableCase, value: lower_case},      {key: readability-identifier-naming.EnumCase, value: CamelCase},      {key: readability-identifier-naming.EnumPrefix, value: E},      {key: readability-identifier-naming.EnumConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.FunctionCase, value: camelBack},      {key: readability-identifier-naming.GlobalConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.GlobalFunctionCase, value: CamelCase},      {key: readability-identifier-naming.GlobalVariableCase, value: lower_case},      {key: readability-identifier-naming.GlobalVariablePrefix, value: g_},      {key: readability-identifier-naming.InlineNamespaceCase, value: lower_case},      {key: readability-identifier-naming.LocalConstantCase, value: CamelCase},      {key: readability-identifier-naming.LocalConstantPrefix, value: k},      {key: readability-identifier-naming.LocalVariableCase, value: lower_case},      {key: readability-identifier-naming.MemberCase, value: CamelCase},      {key: readability-identifier-naming.MemberPrefix, value: m_},      {key: readability-identifier-naming.ConstantMemberCase, value: lower_case},      {key: readability-identifier-naming.PrivateMemberPrefix, value: __},      {key: readability-identifier-naming.ProtectedMemberPrefix, value: _},      {key: readability-identifier-naming.PublicMemberCase, value: lower_case},      {key: readability-identifier-naming.MethodCase, value: camelBack},      {key: readability-identifier-naming.PrivateMethodPrefix, value: __},      {key: readability-identifier-naming.ProtectedMethodPrefix, value: _},      {key: readability-identifier-naming.NamespaceCase, value: lower_case},      {key: readability-identifier-naming.ParameterCase, value: camelBack},      {key: readability-identifier-naming.ParameterPrefix, value: a_},      {key: readability-identifier-naming.ConstantParameterCase, value: camelBack},      {key: readability-identifier-naming.ConstantParameterPrefix, value: i_},      {key: readability-identifier-naming.ParameterPackCase, value: camelBack},      {key: readability-identifier-naming.PureFunctionCase, value: lower_case},      {key: readability-identifier-naming.PureMethodCase, value: camelBack},      {key: readability-identifier-naming.StaticConstantCase, value: UPPER_CASE},      {key: readability-identifier-naming.StaticVariableCase, value: camelBack},      {key: readability-identifier-naming.StaticVariablePrefix, value: s_},      {key: readability-identifier-naming.StructCase, value: lower_case},      {key: readability-identifier-naming.TemplateParameterCase, value: UPPER_CASE},      {key: readability-identifier-naming.TemplateTemplateParameterCase, value: CamelCase},      {key: readability-identifier-naming.TemplateUsingCase, value: lower_case},      {key: readability-identifier-naming.TemplateUsingPrefix, value: u_},      {key: readability-identifier-naming.TypeTemplateParameterCase, value: camelBack},      {key: readability-identifier-naming.TypeTemplateParameterSuffix, value: _t},      {key: readability-identifier-naming.TypedefCase, value: lower_case},      {key: readability-identifier-naming.TypedefSuffix, value: _t},      {key: readability-identifier-naming.UnionCase, value: CamelCase},      {key: readability-identifier-naming.UnionPrefix, value: U},      {key: readability-identifier-naming.UsingCase, value: lower_case},      {key: readability-identifier-naming.ValueTemplateParameterCase, value: camelBack},      {key: readability-identifier-naming.VariableCase, value: lower_case},      {key: readability-identifier-naming.VirtualMethodCase, value: UPPER_CASE},      {key: readability-identifier-naming.VirtualMethodPrefix, value: v_},      {key: readability-identifier-naming.IgnoreFailedSplit, value: 0}    ]}" "--" "-std=c++11" "-fno-delayed-template-parsing"
58>  Command 0 Result: 127
58>  Command 0 Output:
58>
58>
58>  Command 0 Stderr:
58>  '$(dirname': command not found
58>
58>
58>  --
58>
58>  ********************

Is dirname something lit is supposed to be handling for us, or is that a shell command that's not supported on Windows?

~Aaron


http://reviews.llvm.org/D12180





More information about the cfe-commits mailing list