File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1119,9 +1119,12 @@ void Tokenizer::simplifyTypedef()
11191119 typedefInfo.filename = list.file (nameToken);
11201120 typedefInfo.lineNumber = nameToken->linenr ();
11211121 typedefInfo.column = nameToken->column ();
1122- if (Token::Match (typedefToken->next (), " struct|enum|class|union %name% {" ) && typedefToken->strAt (2 ) == typedefInfo.name ) {
1123- typedefInfo.tagLine = typedefToken->tokAt (2 )->linenr ();
1124- typedefInfo.tagColumn = typedefToken->tokAt (2 )->column ();
1122+ if (Token::Match (typedefToken->next (), " struct|enum|class|union %name% {" )) {
1123+ typedefInfo.originalName = typedefToken->strAt (2 );
1124+ if (typedefToken->strAt (2 ) == typedefInfo.name ) {
1125+ typedefInfo.tagLine = typedefToken->tokAt (2 )->linenr ();
1126+ typedefInfo.tagColumn = typedefToken->tokAt (2 )->column ();
1127+ }
11251128 }
11261129 typedefInfo.used = t.second .isUsed ();
11271130 typedefInfo.isFunctionPointer = isFunctionPointer (t.second .nameToken ());
@@ -6372,6 +6375,12 @@ std::string Tokenizer::dumpTypedefInfo() const
63726375 outs += typedefInfo.name ;
63736376 outs += " \" " ;
63746377
6378+ if (!typedefInfo.originalName .empty ()) {
6379+ outs += " originalName=\" " ;
6380+ outs += typedefInfo.originalName ;
6381+ outs += " \" " ;
6382+ }
6383+
63756384 outs += " file=\" " ;
63766385 outs += ErrorLogger::toxml (typedefInfo.filename );
63776386 outs += " \" " ;
Original file line number Diff line number Diff line change @@ -693,6 +693,7 @@ class CPPCHECKLIB Tokenizer {
693693 };
694694 struct TypedefInfo {
695695 std::string name;
696+ std::string originalName;
696697 std::string filename;
697698 int lineNumber;
698699 int column;
You can’t perform that action at this time.
0 commit comments