Check for unstable types in IPC messages.
We want IPC messages to be stable so that 32-bit and 64-bit processes
can talk to each other. This change adds a check to find-bad-constructs
Clang plugin to detect usage of the following unstable types in IPC
messages:
1. Types: long / unsigned long (but not typedefs to)
2. Typedefs: intmax_t, uintmax_t, intptr_t, uintptr_t, wint_t, size_t,
rsize_t, ssize_t, ptrdiff_t, dev_t, off_t, clock_t, time_t, suseconds_t
(including typedefs to)
3. Any template referencing the above (e.g. std::vector<size_t>)
BUG=581409
Review URL: https://codereview.chromium.org/1810243002
Cr-Commit-Position: refs/heads/master@{#385469}
CrOS-Libchrome-Original-Commit: 2bc894640e0423cad921aed8d234adc375999771
2 files changed