@@ -164,9 +164,9 @@ struct DiagnosticStorage {
164164 // / The values for the various substitution positions.
165165 // /
166166 // / This is used when the argument is not an std::string. The specific value
167- // / is mangled into an uint64_t and the interpretation depends on exactly
167+ // / is mangled into an intptr_t and the interpretation depends on exactly
168168 // / what sort of argument kind it is.
169- uint64_t DiagArgumentsVal[MaxArguments];
169+ intptr_t DiagArgumentsVal[MaxArguments];
170170
171171 // / The values for the various substitution positions that have
172172 // / string arguments.
@@ -1179,7 +1179,7 @@ class StreamingDiagnostic {
11791179 DiagStorage = nullptr ;
11801180 }
11811181
1182- void AddTaggedVal (uint64_t V, DiagnosticsEngine::ArgumentKind Kind) const {
1182+ void AddTaggedVal (intptr_t V, DiagnosticsEngine::ArgumentKind Kind) const {
11831183 if (!DiagStorage)
11841184 DiagStorage = getStorage ();
11851185
@@ -1580,18 +1580,18 @@ class Diagnostic {
15801580
15811581 // / Return the specified signed integer argument.
15821582 // / \pre getArgKind(Idx) == DiagnosticsEngine::ak_sint
1583- int64_t getArgSInt (unsigned Idx) const {
1583+ int getArgSInt (unsigned Idx) const {
15841584 assert (getArgKind (Idx) == DiagnosticsEngine::ak_sint &&
15851585 " invalid argument accessor!" );
1586- return (int64_t )DiagObj->DiagStorage .DiagArgumentsVal [Idx];
1586+ return (int )DiagObj->DiagStorage .DiagArgumentsVal [Idx];
15871587 }
15881588
15891589 // / Return the specified unsigned integer argument.
15901590 // / \pre getArgKind(Idx) == DiagnosticsEngine::ak_uint
1591- uint64_t getArgUInt (unsigned Idx) const {
1591+ unsigned getArgUInt (unsigned Idx) const {
15921592 assert (getArgKind (Idx) == DiagnosticsEngine::ak_uint &&
15931593 " invalid argument accessor!" );
1594- return DiagObj->DiagStorage .DiagArgumentsVal [Idx];
1594+ return ( unsigned ) DiagObj->DiagStorage .DiagArgumentsVal [Idx];
15951595 }
15961596
15971597 // / Return the specified IdentifierInfo argument.
@@ -1605,7 +1605,7 @@ class Diagnostic {
16051605
16061606 // / Return the specified non-string argument in an opaque form.
16071607 // / \pre getArgKind(Idx) != DiagnosticsEngine::ak_std_string
1608- uint64_t getRawArg (unsigned Idx) const {
1608+ intptr_t getRawArg (unsigned Idx) const {
16091609 assert (getArgKind (Idx) != DiagnosticsEngine::ak_std_string &&
16101610 " invalid argument accessor!" );
16111611 return DiagObj->DiagStorage .DiagArgumentsVal [Idx];
0 commit comments