Merge remote-tracking branch

'origin/GP-4824_ghizard_PDB_MSDIA_process_types_with_NoType' (#6744)
This commit is contained in:
Ryan Kurtz 2024-08-12 06:33:08 -04:00
commit 81149a4dcc

View File

@ -17,6 +17,8 @@ package ghidra.app.util.bin.format.pdb;
import java.util.*;
import org.apache.commons.lang3.StringUtils;
import ghidra.app.services.DataTypeManagerService;
import ghidra.program.database.data.DataTypeUtilities;
import ghidra.program.model.data.*;
@ -190,11 +192,14 @@ class PdbDataTypeParser {
// [16]
if (dataTypeName.startsWith("*") || dataTypeName.startsWith("[")) {
// prepend undefined since intent is some datatype
Msg.warn(this, "dataTypeName \"" + dataTypeName +
Msg.warn(this, "dataTypeName \"" + dataTypeName +
"\" references a pointer or array without a declared datatype; assuming undefined");
dataTypeName = "undefined" + dataTypeName;
}
// Deal with other unrecognized types
dataTypeName = StringUtils.replace(dataTypeName, "<NoType>", "undefined");
// Example type representations:
// char *[2][3] pointer(array(array(char,3),2))
// char *[2][3] * pointer(array(array(pointer(char),3),2))