[analyzer] Fix the matcher for GCDAntipattern to look for "signal" call in all parameters

rdar://38405904

llvm-svn: 327426
diff --git a/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp
index 51a3fc1..bb1bd85 100644
--- a/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp
@@ -121,11 +121,11 @@
             hasCanonicalType(blockPointerType())
             ));
 
-  auto ArgCallsSignalM = hasArgument(0, hasDescendant(callExpr(
+  auto ArgCallsSignalM = hasAnyArgument(stmt(hasDescendant(callExpr(
           allOf(
               callsName("dispatch_semaphore_signal"),
               equalsBoundArgDecl(0, SemaphoreBinding)
-              ))));
+              )))));
 
   auto HasBlockAndCallsSignalM = allOf(HasBlockArgumentM, ArgCallsSignalM);