https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90124
Bug ID: 90124 Summary: [9 Regression] Compilation of llvm PDBContext.cpp fails. Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: iains at gcc dot gnu.org Target Milestone: --- Created attachment 46181 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46181&action=edit unreduced PDBContext.ii trunk GCC currently fails to build LLVM (7 branch at least ) with the following: /home/iains/gcc-trunk/install/libexec/gcc/x86_64-pc-linux-gnu/9.0.1/cc1plus -fpreprocessed PDBContext.ii -quiet -dumpbase PDBContext.cpp -mtune=generic -march=x86-64 -auxbase-strip CMakeFiles/LLVMDebugInfoPDB.dir/PDBContext.cpp.o - Os -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -Wpedantic -Wno-long-long -Wno-maybe-uninitialized -Wno-class-memaccess -Wdelete-non-virtual-dtor -Wno-comment -std =c++11 -version -fPIC -fvisibility-inlines-hidden -ffunction-sections -fdata-sections -fno-exceptions -fno-rtti -o PDBContext.s GNU C++11 (GCC) version 9.0.1 20190416 (experimental) [trunk revision 270376] (x86_64-pc-linux-gnu) compiled by GNU C version 9.0.1 20190416 (experimental) [trunk revision 270376], GMP version 6.1.2, MPFR version 3.1.5, MPC version 1.0.3, isl version none GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 GNU C++11 (GCC) version 9.0.1 20190416 (experimental) [trunk revision 270376] (x86_64-pc-linux-gnu) compiled by GNU C version 9.0.1 20190416 (experimental) [trunk revision 270376], GMP version 6.1.2, MPFR version 3.1.5, MPC version 1.0.3, isl version none GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096 Compiler executable checksum: 4b7aa8ad0f9dc04e51fdc48d2596248f In file included from /home/iains/llvm-project/llvm/lib/DebugInfo/PDB/PDBContext.cpp:15: /home/iains/llvm-project/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h:32:36: error: invalid use of incomplete type ‘const class llvm::pdb::PDBSymbolData’ 32 | FORWARD_SYMBOL_METHOD(getAccess) | ^ /home/iains/llvm-project/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h:23:7: note: definition of ‘class llvm::pdb::PDBSymbolData’ is not complete until the closing brace 23 | class PDBSymbolData : public PDBSymbol { | ^~~~~~~~~~~~~ /home/iains/llvm-project/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h:32:36: error: invalid use of incomplete type ‘const class llvm::pdb::PDBSymbolData’ 32 | FORWARD_SYMBOL_METHOD(getAccess) < many more like this> 8.3 works, and AFAIR trunk worked recently (order one or two months).