Skip to content
  • John McCall's avatar
    When building types from declarators, instead of building two types (one for · fc93cf97
    John McCall authored
    the DeclaratorInfo, one for semantic analysis), just build a single type whose
    canonical type will reflect the semantic analysis (assuming the type is
    well-formed, of course).
    
    To make that work, make a few changes to the type system:
    * allow the nominal pointee type of a reference type to be a (possibly sugared)
      reference type.  Also, preserve the original spelling of the reference type.
      Both of these can be ignored on canonical reference types.
    * Remove ObjCProtocolListType and preserve the associated source information on
      the various ObjC TypeLocs.  Preserve the spelling of protocol lists except in
      the canonical form.
    * Preserve some level of source type structure on parameter types, but
      canonicalize on the canonical function type.  This is still a WIP.
    
    Drops code size, makes strides towards accurate source location representation,
    slight (~1.7%) progression on Cocoa.h because of complexity drop.
    
    llvm-svn: 84907
    fc93cf97
Loading