title: C++ Namespace conflicts between 3rd party headers
body: <p>This is related to <a href="https://stackoverflow.com/questions/52434713">another namespace issue</a>.</p>
  
  <p>I'm integrating Scaleform into an OSX C++ application.</p>
  
  <p>I'm getting type conflicts between OSX headers (/usr/include/MacTypes.h) and Scaleform Headers:</p>
  
  <pre>
  ...other includes...
  In file included from /System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:43:
  In file included from /System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h:77:
  /usr/include/MacTypes.h:249:9: error: reference to 'Ptr' is ambiguous
  typedef Ptr *                           Handle;
          ^
  /usr/include/MacTypes.h:248:41: note: candidate found by name lookup is 'Ptr'
  typedef char *                          Ptr;
                                          ^
  .../sf_4.6.33_osx_lib/Include/../Src/Kernel/SF_RefCount.h:364:7: note: candidate found by name lookup is 'Scaleform::Ptr'
  class Ptr
        ^
  </pre>
  
  <p>I probably don't want to change /usr/include/MacTypes.h :-). And I don't want to go down the path of modifying Scaleform code.</p>
  
  <p>How can I solve this?</p>