[all-commits] [llvm/llvm-project] 72e9e3: [Sema] Remove a -Wrange warning from -Wall
mordante via All-commits
all-commits at lists.llvm.org
Mon Feb 3 03:43:54 PST 2020
Branch: refs/heads/release/10.x
Home: https://github.com/llvm/llvm-project
Commit: 72e9e378c545aadb213e95892d50aa0b1248e018
https://github.com/llvm/llvm-project/commit/72e9e378c545aadb213e95892d50aa0b1248e018
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2020-02-03 (Mon, 03 Feb 2020)
Changed paths:
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/test/Misc/warning-wall.c
M clang/test/SemaCXX/warn-range-loop-analysis.cpp
Log Message:
-----------
[Sema] Remove a -Wrange warning from -Wall
During the review of D73007 Aaron Puchert mentioned
`warn_for_range_variable_always_copy` shouldn't be part of -Wall since
some coding styles require `for(const auto &bar : bars)`. This warning
would cause false positives for these users. Based on Aaron's proposal
refactored the warnings:
* -Wrange-loop-construct warns about possibly unintended constructor
calls. This is part of -Wall. It contains
* warn_for_range_copy: loop variable A of type B creates a copy from
type C
* warn_for_range_const_reference_copy: loop variable A is initialized
with a value of a different type resulting in a copy
* -Wrange-loop-bind-reference warns about misleading use of reference
types. This is not part of -Wall. It contains
* warn_for_range_variable_always_copy: loop variable A is always a copy
because the range of type B does not return a reference
Differential Revision: https://reviews.llvm.org/D73434
(cherry picked from commit c03349e40f21f0375278138992a32694a99c830e)
More information about the All-commits
mailing list