-
Notifications
You must be signed in to change notification settings - Fork 15.2k
Open
Labels
clang-tidyinvalid-code-generationTool (e.g. clang-format) produced invalid code that no longer compilesTool (e.g. clang-format) produced invalid code that no longer compiles
Description
With clang-tidy built at current head and applying it on MLIR:
$ clang-tidy -p build mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp --checks=-*,performance-unnecessary-copy-initialization -fix -fix-errors
Yield this diff:
diff --git a/mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp b/mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
index 20f9333e7c95..1438266472f2 100644
--- a/mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
+++ b/mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
@@ -381,7 +381,7 @@ LogicalResult TosaProfileCompliance::checkProfileOrExtension(
// Find the required profiles or extensions according to the operand type
// combination.
- const auto opRequiredMode = maybeOpRequiredMode.value();
+ const auto &&opRequiredMode = maybeOpRequiredMode.value();
if (opRequiredMode.size() == 0) {
// No matched restriction found.
return success();
Fails to build with:
FAILED: tools/mlir/lib/Dialect/Tosa/Transforms/CMakeFiles/obj.MLIRTosaTransforms.dir/TosaProfileCompliance.cpp.o
CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/bin/ccache /home/mamini/bin/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ibuild/tools/mlir/lib/Dialect/Tosa/Transforms -Imlir/lib/Dialect/Tosa/Transforms -Ibuild/tools/mlir/include -Imlir/include -Ibuild/include -Illvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wundef -Werror=mismatched-tags -Werror=global-constructors -O3 -DNDEBUG -std=c++17 -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -MD -MT tools/mlir/lib/Dialect/Tosa/Transforms/CMakeFiles/obj.MLIRTosaTransforms.dir/TosaProfileCompliance.cpp.o -MF tools/mlir/lib/Dialect/Tosa/Transforms/CMakeFiles/obj.MLIRTosaTransforms.dir/TosaProfileCompliance.cpp.o.d -o tools/mlir/lib/Dialect/Tosa/Transforms/CMakeFiles/obj.MLIRTosaTransforms.dir/TosaProfileCompliance.cpp.o -c mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp:384:16: error: rvalue reference to type 'const SmallVector<...>' cannot bind to lvalue of type 'const SmallVector<...>'
384 | const auto &&opRequiredMode = maybeOpRequiredMode.value();
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp:447:12: note: in instantiation of function template specialization 'TosaProfileCompliance::checkProfileOrExtension<mlir::tosa::Profile>' requested here
447 | return checkProfileOrExtension<Profile>(op, targetEnv,
| ^
mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp:384:16: error: rvalue reference to type 'const SmallVector<...>' cannot bind to lvalue of type 'const SmallVector<...>'
384 | const auto &&opRequiredMode = maybeOpRequiredMode.value();
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp:457:12: note: in instantiation of function template specialization 'TosaProfileCompliance::checkProfileOrExtension<mlir::tosa::Extension>' requested here
457 | return checkProfileOrExtension<Extension>(op, targetEnv,
| ^
2 errors generated.
Metadata
Metadata
Assignees
Labels
clang-tidyinvalid-code-generationTool (e.g. clang-format) produced invalid code that no longer compilesTool (e.g. clang-format) produced invalid code that no longer compiles