[PATCH] D34510: Teach clang how to merge typedef over anonymous structs in C mode.

2017-07-01 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev closed this revision. v.g.vassilev added a comment. Landed in r306964. Repository: rL LLVM https://reviews.llvm.org/D34510 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D34510: Teach clang how to merge typedef over anonymous structs in C mode.

2017-06-30 Thread Bruno Cardoso Lopes via Phabricator via cfe-commits
bruno accepted this revision. bruno added a comment. This revision is now accepted and ready to land. Tested it locally, we actually need all these changes on top of https://reviews.llvm.org/D31778. LGTM Repository: rL LLVM https://reviews.llvm.org/D34510

[PATCH] D34510: Teach clang how to merge typedef over anonymous structs in C mode.

2017-06-30 Thread Bruno Cardoso Lopes via Phabricator via cfe-commits
bruno added a comment. Hi @v.g.vassilev, sorry for the delay. Just updated https://reviews.llvm.org/D31778. I agree with Richard's observations, do you think you can extend it to work in the same way as https://reviews.llvm.org/D31778 does? The structural checking is already abstracted there

[PATCH] D34510: Teach clang how to merge typedef over anonymous structs in C mode.

2017-06-29 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a comment. @bruno ping... Repository: rL LLVM https://reviews.llvm.org/D34510 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D34510: Teach clang how to merge typedef over anonymous structs in C mode.

2017-06-26 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. https://reviews.llvm.org/D31778 is related. We need to have a design for how ODR-like issues in C will be resolved before we'll know what the right fix is here. Prior to https://reviews.llvm.org/D31778 my intention had been to implement C's structural typing

[PATCH] D34510: Teach clang how to merge typedef over anonymous structs in C mode.

2017-06-22 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev created this revision. empty.h makes module A available. textual.h brings the definition of __fsid_t and a.h imports again the definition of __fsid_t. In C mode clang fails to merge the textually included definition with the one imported from a module. The C lookup rules fail to