Closed r0mai closed 2 years ago
@r0mai Thanks for the excellent bug report. Your analysis was correct! I believe the PR branch resolves your issue. Please let me know if not.
@jefftrull I tried the PR branch, and it works perfectly. Thank you very much for the quick fix!
Lines containing a
__has_include()
operator will fail if any token (even whitespace) follows the__has_include()
expression.I believe the error can be traced back to this look-ahead loop, which implicitly expects the last token of the line to be the matching closing parenthesis of the
__has_include
expression:https://github.com/boostorg/wave/blob/b8cbd86ab907f5dd42bc807a37b6729b84013382/include/boost/wave/util/cpp_macromap.hpp#L1789-L1797
Repro code: