Printf argument checking now supports dynamically-passed precision
specifiers.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42886 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Sema/SemaChecking.cpp b/Sema/SemaChecking.cpp
index 863882e..ea63b7d 100644
--- a/Sema/SemaChecking.cpp
+++ b/Sema/SemaChecking.cpp
@@ -282,11 +282,16 @@
 
     // Seen '%'.  Now processing a format conversion.
     switch (Str[StrIdx]) {
+        // Handle dynamic precision specifier.     
+      case '*':
+        if (Str[StrIdx-1] == '.') ++numConversions;          
+        break;
+        
       // Characters which can terminate a format conversion
       // (e.g. "%d").  Characters that specify length modifiers or
       // other flags are handled by the default case below.
       //
-      // TODO: additional checks will go into the following cases.
+      // FIXME: additional checks will go into the following cases.                
       case 'i':
       case 'd':
       case 'o':