diff options
author | Julie Hockett <juliehockett@google.com> | 2018-01-17 21:18:15 +0000 |
---|---|---|
committer | Julie Hockett <juliehockett@google.com> | 2018-01-17 21:18:15 +0000 |
commit | 93a88e33ef5abb7fa7558b7c63585421502b2266 (patch) | |
tree | 6d6323aba4dcbc298bf7e292d7175e7f520044c9 /clang-tools-extra/test/clang-tidy/fuchsia-trailing-return.cpp | |
parent | 75d7ee6af579fe9f2624ae016c9fdad2d1192559 (diff) | |
download | bcm5719-llvm-93a88e33ef5abb7fa7558b7c63585421502b2266.tar.gz bcm5719-llvm-93a88e33ef5abb7fa7558b7c63585421502b2266.zip |
[clang-tidy] Adding Fuchsia checker for trailing returns
Adds a check to the Fuchsia module to warn if a function has a trailing
return.
See https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md for
reference.
Differential Revision: https://reviews.llvm.org/D42116
llvm-svn: 322759
Diffstat (limited to 'clang-tools-extra/test/clang-tidy/fuchsia-trailing-return.cpp')
-rw-r--r-- | clang-tools-extra/test/clang-tidy/fuchsia-trailing-return.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/clang-tools-extra/test/clang-tidy/fuchsia-trailing-return.cpp b/clang-tools-extra/test/clang-tidy/fuchsia-trailing-return.cpp new file mode 100644 index 00000000000..f6c943ac873 --- /dev/null +++ b/clang-tools-extra/test/clang-tidy/fuchsia-trailing-return.cpp @@ -0,0 +1,23 @@ +// RUN: %check_clang_tidy %s fuchsia-trailing-return %t + +int add_one(const int arg) { return arg; } + +auto get_add_one() -> int (*)(const int) { + // CHECK-MESSAGES: [[@LINE-1]]:1: warning: a trailing return type is disallowed for this type of declaration + // CHECK-NEXT: auto get_add_one() -> int (*)(const int) { + return add_one; +} + +auto lambda = [](double x, double y) {return x + y;}; + +auto lambda2 = [](double x, double y) -> double {return x + y;}; + +int main() { + get_add_one()(5); + return 0; +} + +template <typename T1, typename T2> +auto fn(const T1 &lhs, const T2 &rhs) -> decltype(lhs + rhs) { + return lhs + rhs; +} |