As the deleted comment says, we don't care about the access specifier.
I also encountered a crash at here (called from https://github.com/llvm/llvm-project/blob/main/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp#L2141) when fixing a bug on SymbolFileNativePDB.cpp.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp | ||
---|---|---|
95 | No, we don't care about the return value but we care about the assert which means the AST node is not well formed. In this case IIRC we are verifying that a member has an access specifier that is not set to AS_none. |
Comment Actions
I'm pretty sure you're trying to solve the same problem as here: D85993
In short: You're calling CreateFunctionDeclaration to create a function in a record, but you actually want to call AddMethodToCXXRecordType which allows passing and setting an access specifier (which is what the assert here checks). You can fix this in the PDB plugin by looking at the DeclContext and if decl_ctx->isRecord() -> AddMethodToCXXRecordType and otherwise CreateFunctionDeclaration.
No, we don't care about the return value but we care about the assert which means the AST node is not well formed. In this case IIRC we are verifying that a member has an access specifier that is not set to AS_none.