|  | Update plugin to handle new style rules for virtual specifiers.
Implements several new checks in the plugin, gated behind a flag:
- Only one of {virtual,override,final} should be ever used.
- Destructors must also be annotated correctly.
- A virtual final method that doesn't override anything should be
  devirtualized.
The test harness for the Chrome plugin has also been updated to stop
it from littering the source tree with object files, and to make the
golden files easier to update.
BUG=417463 
Committed: https://crrev.com/993e04f76665c46336a6c790706d863adf64b49c 
Cr-Commit-Position: refs/heads/master@{#297129}
  
  
   
  
   
  
   
  
   
      Total comments: 2
      
     
  
   
  
   
  
   
  
   
      Total comments: 21
      
     
  
   
  
   
      Total comments: 3
      
     
  
   
  
   
  
   
    
  
  
    
      |  | Unified diffs | Side-by-side diffs | Delta from patch set | Stats (+363 lines, -211 lines) | Patch |  
        |  | M | tools/clang/plugins/FindBadConstructsAction.cpp | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 1 chunk | +2 lines, -0 lines | 0 comments | Download |  
        |  | M | tools/clang/plugins/FindBadConstructsConsumer.h | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 3 chunks | +8 lines, -9 lines | 0 comments | Download |  
        |  | M | tools/clang/plugins/FindBadConstructsConsumer.cpp | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11 | 7 chunks | +134 lines, -76 lines | 0 comments | Download |  
        |  | M | tools/clang/plugins/Options.h | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8 | 1 chunk | +3 lines, -1 line | 0 comments | Download |  
        |  | M | tools/clang/plugins/tests/blacklisted_dirs.txt | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 1 chunk | +4 lines, -4 lines | 0 comments | Download |  
        |  | M | tools/clang/plugins/tests/overridden_methods.txt | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 1 chunk | +32 lines, -32 lines | 0 comments | Download |  
        |  | M | tools/clang/plugins/tests/test.sh | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10 | 2 chunks | +5 lines, -1 line | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_base_method_also_final.cpp | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13 | 1 chunk | +17 lines, -0 lines | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_base_method_also_final.flags | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8 | 1 chunk | +1 line, -0 lines | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_base_method_also_final.txt | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13 | 1 chunk | +29 lines, -0 lines | 0 comments | Download |  
        |  | A + | tools/clang/plugins/tests/virtual_bodies.h | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 1 chunk | +1 line, -0 lines | 0 comments | Download |  
        |  | A + | tools/clang/plugins/tests/virtual_bodies.cpp | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 2 chunks | +7 lines, -4 lines | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_bodies.txt | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6 | 1 chunk | +5 lines, -0 lines | 0 comments | Download |  
        |  | D | tools/clang/plugins/tests/virtual_methods.h | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6 | 1 chunk | +0 lines, -39 lines | 0 comments | Download |  
        |  | D | tools/clang/plugins/tests/virtual_methods.cpp | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6 | 1 chunk | +0 lines, -36 lines | 0 comments | Download |  
        |  | M | tools/clang/plugins/tests/virtual_methods.txt | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6 | 1 chunk | +0 lines, -9 lines | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_specifiers.cpp | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13 | 1 chunk | +63 lines, -0 lines | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_specifiers.flags | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9 | 1 chunk | +1 line, -0 lines | 0 comments | Download |  
        |  | A | tools/clang/plugins/tests/virtual_specifiers.txt | View | 1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13 | 1 chunk | +51 lines, -0 lines | 0 comments | Download |  
    Total messages: 32 (8 generated)
     |