//\r
case 'd':\r
if ((Flags & LONG_TYPE) == 0) {\r
+ //\r
+ // 'd','x', and 'X' that are not preceeded by 'l' or 'L' are assumed to be type "int".\r
+ // This assumption is made so the format string defintion is compatible with the ANSI C\r
+ // Specification for formatted strings. It is recommended that the Base Types be used \r
+ // everywhere, but in this one case, compliance with ANSI C is more important, and \r
+ // provides an implementation that is compatible with that largest possible set of CPU \r
+ // architectures. This is why the type "int" is used in this one case.\r
+ //\r
Value = (VA_ARG (Marker, int));\r
} else {\r
Value = VA_ARG (Marker, INT64);\r
Radix = 16;\r
Comma = FALSE;\r
if ((Flags & LONG_TYPE) == 0 && Value < 0) {\r
+ //\r
+ // 'd','x', and 'X' that are not preceeded by 'l' or 'L' are assumed to be type "int".\r
+ // This assumption is made so the format string defintion is compatible with the ANSI C\r
+ // Specification for formatted strings. It is recommended that the Base Types be used \r
+ // everywhere, but in this one case, compliance with ANSI C is more important, and \r
+ // provides an implementation that is compatible with that largest possible set of CPU \r
+ // architectures. This is why the type "unsigned int" is used in this one case.\r
+ //\r
Value = (unsigned int)Value;\r
}\r
}\r