RFC: JEP JDK-8208089: Implement C++14 Language Features (original) (raw)
Erik Helin erik.helin at oracle.com
Fri Oct 5 07:58:53 UTC 2018
- Previous message (by thread): RFC: JEP JDK-8208089: Implement C++14 Language Features
- Next message (by thread): RFC: JEP JDK-8208089: Implement C++14 Language Features
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 10/4/18 2:31 PM, Magnus Ihse Bursie wrote:>> 4 okt. 2018 kl. 10:57 skrev Martijn Verburg <martijnverburg at gmail.com>:
I like this initiative. I'm wondering if some of these rules can be easily codified or written into a jcheck style checker (ccheck?) so that Authors can adhere to the conventions and not rely on a Human review to pick out where that convention isn't met. That's an interesting thought! I googled around a bit, but could find no obvious candidate for doing such a check. In fact, parsing and analyzing C++ seems quite a hard problem, compared to many other languages. (Sad, but not really surprising.) I found two possible routes to explore: cpplint 1, the official Google tool to verify that the Google C++ Style Guide 2 is followed, and Vera++ [3], a framework for creating scripts that can analyze and/or transform C++ code.
As usual there is of a third route, this one is "just a matter of programming" :)
The (probably) easiest way to enforce usage of only a subset of C++ is to write custom clang-tidy checks 0. We could most likely write a couple of ASTMatchers 1 to watch out for features we do not want. It used to be very hard to use the clang tooling with HotSpot, but thanks to Robin Westberg's compile-commands patch 2 that just went in, this is no longer an issue.
Unfortunately I don't think requiring all contributors to install a custom version of clang-tidy with HotSpot checks is feasible, this is more something you would want to run in a CI setup.
Thanks, Erik
- Previous message (by thread): RFC: JEP JDK-8208089: Implement C++14 Language Features
- Next message (by thread): RFC: JEP JDK-8208089: Implement C++14 Language Features
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]