Warns when you should be passing by const-ref. Types with sizeof > 16 bytes  or types which are not trivially-copyable  or not trivially-destructible  should be passed by ref. A rule of thumb is that if passing by value would trigger copy-ctor and/or dtor then pass by ref instead.
This check will ignore shared pointers, you're on your own. Most of the times passing shared pointers by const-ref is the best thing to do, but occasionally that will lead to crashes if you're in a method that calls something else that makes the shared pointer ref count go down to zero.
This check supports adding missing