I know that the code form protobuf is old but maybe there is an issue in the parser.
I get the following error (this is working well with the llvm from Apple):
/src/runtime/Classes/CodedOutputStream.m:389:47: current parser token ‘{’
clang-3.9: error: unable to execute command: Segmentation fault: 11
I have no experience with the front-end but it seems that the issue is at the end of the file (I have attached the file).
If you remove the function writeRawLittleEndian32 and writeRawLittleEndian64, the parser does not indicate any error (maybe the error is in writeRawVarint64 and it is propagate to the next function).
I know that the code form protobuf is old but maybe there is an issue in
the parser.
I get the following error (this is working well with the llvm from Apple):
/src/runtime/Classes/CodedOutputStream.m:389:47: current parser token '{'
clang-3.9: error: unable to execute command: Segmentation fault: 11
I have no experience with the front-end but it seems that the issue is at
the end of the file (I have attached the file).
If you remove the function writeRawLittleEndian32 and
writeRawLittleEndian64, the parser does not indicate any error (maybe the
error is in writeRawVarint64 and it is propagate to the next function).
Hi Johan,
I tried reproducing this issue with clang-3.9 and top of tree clang but I
failed with both. Can you please describe your exact configuration and
compiler arguments? Running clang with the `-v` option turned on should
give you this information.
As well as that, can you please attach the exact preprocessed output of
'CodedOutputStream.m' as well? You can obtain it by running `clang -E` on
that file.
// Check if the function is still correct. if (verifyFunction(F, &OS)) { std::string mess = “[” + std::string(ctp.str) + "]\tFunction " + F.getName().str() + " error during pass " + OS.str() + “\n”; F.getContext().emitError(Twine(mess)); }