Restore the support for the 'r' and the 'y' conversion specifiers, first

added on r208987.
These are undocumented but are part of printf(9).
This commit is contained in:
Rui Paulo 2010-10-11 08:10:12 +00:00
parent 0c019d8c6e
commit 921f8a1b40

View File

@ -195,6 +195,8 @@ static PrintfSpecifierResult ParsePrintfSpecifier(FormatStringHandler &H,
case 'm': k = ConversionSpecifier::PrintErrno; break;
// FreeBSD format extensions
case 'b': if (FormatExtensions) k = ConversionSpecifier::bArg; break; /* check for int and then char * */
case 'r': if (FormatExtensions) k = ConversionSpecifier::xArg; break;
case 'y': if (FormatExtensions) k = ConversionSpecifier::iArg; break;
case 'D': if (FormatExtensions) k = ConversionSpecifier::DArg; break; /* check for u_char * pointer and a char * string */
}
PrintfConversionSpecifier CS(conversionPosition, k);