aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Analysis/PrintfFormatString.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2011-01-08 05:28:38 +0000
committerTed Kremenek <kremenek@apple.com>2011-01-08 05:28:38 +0000
commita322cae011c7949e6986bb4e8c9319569227b5d8 (patch)
treeed4226df902195b3d98d906ca64b1343acd98c43 /clang/lib/Analysis/PrintfFormatString.cpp
parentde9d0494ef474b4db5d24ad89357629d08804499 (diff)
downloadllvm-a322cae011c7949e6986bb4e8c9319569227b5d8.zip
llvm-a322cae011c7949e6986bb4e8c9319569227b5d8.tar.gz
llvm-a322cae011c7949e6986bb4e8c9319569227b5d8.tar.bz2
Add printf format string parsing support for '
prefix to format conversions (POSIX extension). llvm-svn: 123054
Diffstat (limited to 'clang/lib/Analysis/PrintfFormatString.cpp')
-rw-r--r--clang/lib/Analysis/PrintfFormatString.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/Analysis/PrintfFormatString.cpp b/clang/lib/Analysis/PrintfFormatString.cpp
index ff688e07..d99de22 100644
--- a/clang/lib/Analysis/PrintfFormatString.cpp
+++ b/clang/lib/Analysis/PrintfFormatString.cpp
@@ -100,6 +100,10 @@ static PrintfSpecifierResult ParsePrintfSpecifier(FormatStringHandler &H,
for ( ; I != E; ++I) {
switch (*I) {
default: hasMore = false; break;
+ case '\'':
+ // FIXME: POSIX specific. Always accept?
+ FS.setHasThousandsGrouping(I);
+ break;
case '-': FS.setIsLeftJustified(I); break;
case '+': FS.setHasPlusPrefix(I); break;
case ' ': FS.setHasSpacePrefix(I); break;
@@ -185,7 +189,7 @@ static PrintfSpecifierResult ParsePrintfSpecifier(FormatStringHandler &H,
case 's': k = ConversionSpecifier::sArg; break;
case 'u': k = ConversionSpecifier::uArg; break;
case 'x': k = ConversionSpecifier::xArg; break;
- // Mac OS X (unicode) specific
+ // POSIX specific.
case 'C': k = ConversionSpecifier::CArg; break;
case 'S': k = ConversionSpecifier::SArg; break;
// Objective-C.