Hash :
aa7203ef
        
        Author :
  
        
        Date :
2017-05-03T23:32:29
        
      
Inherit privately from angle::NonCopyable.
Make all inheritance from angle::NonCopyable private so the compiler
complains about this (admittedly unlikely) code:
  class Foo: angle::NonCopyable {
      virtual ~Foo() { ... }
  };
  angle::NonCopyable *p = new Foo;
  delete p;
In the above code ~Foo() is not called, only ~NonCopyable(), because the
latter is not virtual.  Making it virtual would add overhead to all derived
classes which don't already have a virtual method.
Also tighten access in NonCopyable, because we can.
BUG=angleproject:2026
Change-Id: Id0dc4d959cfb7bb82cf49382118129abb1d3a4f0
Reviewed-on: https://chromium-review.googlesource.com/495352
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>