[PATCH] D97462: [clang][cli] Round-trip cc1 arguments in assert builds

Jan Svoboda via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Apr 2 10:02:40 PDT 2021


jansvoboda11 added a comment.

In D97462#2666366 <https://reviews.llvm.org/D97462#2666366>, @akhuang wrote:

> In Chrome we noticed that plugin flags are not being roundtripped (and build fails with `error: Generated arguments do not match in round-trip`):
>
> example of the differing args:
>
>   "-plugin-arg-blink-gc-plugin"
>   "no-members-in-stack-allocated"
>   "-plugin-arg-find-bad-constructs"
>   "checked-ptr-as-trivial-member"
>   "-plugin-arg-find-bad-constructs"
>   "check-ipc"
>
> vs
>
>   "-plugin-arg-find-bad-constructs"
>   "checked-ptr-as-trivial-member"
>   "-plugin-arg-find-bad-constructs"
>   "check-ipc"
>   "-plugin-arg-blink-gc-plugin"
>   "no-members-in-stack-allocated"

Thanks for reporting that. D99606 <https://reviews.llvm.org/D99606> fixes one aspect of `-plugin-arg`, but it seems the order of generation is non-deterministic (most likely related to the underlying storage, `std::unordered_map`). I can look into it early next week, but I think simple sort in the generation code should do the trick.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D97462/new/

https://reviews.llvm.org/D97462



More information about the cfe-commits mailing list