Define a marco at the end of a header file:
Open UnrealHeaderTool project, In the function “FBaseParser::GetChar”, add a breakpoint with condition “InputPos>InputLen+1”.Then start debugging UnrealHeaderTool with arguments copyed from the game project.
Wait until the breadpoint is triggered:
At this moment, UBT starts to parse the part of “FBaseParser::Input” which is not belonged to the header file.Then
any unexpected compilation error maybe happened in other header files!!!
This bug took me a whole day to find…
Please to fix it as soon as possible
When I added a macro to the end of a header file as you showed, the last
\ character seemed to consume the end of file character. However, that only happened if I did not add some extra blank lines between the macro and the end of the file. If you do not include the last
\ character, do you still run into this issue?
I was not able to get the conditional breakpoint that you mentioned setting to get hit. Could you clarify what arguments you are using when you start debugging UHT?
I deleted the last ‘’ character, and this issue was solved.
The arguments of UHT were as below:
Thank you very much.