Bug 83645

Summary: [chromium] [meta] We should use OVERRIDE annotations where appropriate in chromium compositor code
Product: WebKit Reporter: James Robinson <jamesr>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WONTFIX    
Severity: Normal CC: cc-bugs, enne, schenney
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 83646, 83650, 83653, 83658, 87073, 87074    
Bug Blocks:    

Description James Robinson 2012-04-10 17:52:36 PDT
Annotating implementations of virtual functions that we intend to be overrides with OVERRIDE could help us cut down on bugs and make refactors easier. Currently OVERRIDE is supported on the following chromium configurations:

1.) Windows - MSVS2010, on by default. Enabled on the bots.
2.) Mac - clang, on by default. Enabled on the bots.
3.) Linux - default compiler (gcc 4.4.3 that comes with lucid) ignores OVERRIDE, clang (very easy to set up, we have non-default bots that run it) supports it. Not enabled on most bots - in particular cr-linux EWS and commit queue don't use clang currently.

Many of use who work on the compositor guts code on linux, but we could get local checking for OVERRIDE by switching to clang.  Regardless, we'd still get coverage from many bots.

On balance I think this would be a win.  I was bit while doing https://bugs.webkit.org/show_bug.cgi?id=83530 when I forgot to update a unit test implementation that was trying to override an interface I had refactored and I can think of a few instances in the past where this has caused trouble for developers and caused a few real shipping bugs.