Add the following Clang plugins:
PrintNamesAndSizes -Find top-level type definitions. Print their kind (struct, enum, etc), typename, size, and location. FindAffectedInterfaces -Given some typenames, find other types which are affected if that type changes. This is specifically for determining which interfaces are affected by changing a struct or structs. Also add a Makefile to build the plugins and a README describing how to run them. Also add a python script that runs PrintNamesAndSizes with several different targets and generates compile-time checks in to the PPAPI source code to enforce that sizes are consistent, or if they change, we find out quickly. This was broken off from a bigger CL: http://codereview.chromium.org/5340003/ BUG=61004,92983 TEST=None See this CL for an example of what these plugins helped me do: http://codereview.chromium.org/5674004 Review URL: http://codereview.chromium.org/5730003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69187 0039d316-1c4b-4281-b951-d872f2087c98
Showing
- ppapi/generate_ppapi_size_checks.py 348 additions, 0 deletionsppapi/generate_ppapi_size_checks.py
- ppapi/tests/clang/Makefile 64 additions, 0 deletionsppapi/tests/clang/Makefile
- ppapi/tests/clang/README 32 additions, 0 deletionsppapi/tests/clang/README
- ppapi/tests/clang/find_affected_interfaces.cc 154 additions, 0 deletionsppapi/tests/clang/find_affected_interfaces.cc
- ppapi/tests/clang/print_names_and_sizes.cc 150 additions, 0 deletionsppapi/tests/clang/print_names_and_sizes.cc
Loading
Please register or sign in to comment