anchor.diff:          | Attr of text: string * attributes: (string * string) list * layout: Layout
   
           static member internal JuxtapositionMiddle: left: Layout * right: Layout -> bool
  -#endif
  -
  +#else  // FSharp.Compiler.Service.dll, fsc.exe
  +    /// Data representing structured layouts of terms.  
  +    // FSharp.Core.dll makes things internal and hides representations
  +    type internal Layout
  +
  +    type internal LayoutTag
  +
  +    [<Class>]
  +    type internal TaggedText =
  +        member Tag: LayoutTag
  +        member Text: string
  +#endif
  +
  +#if COMPILER
       module public TaggedText =
  +#else
  +    module internal TaggedText =
  +#endif
           val tagText: string -> TaggedText
           val tagField: string -> TaggedText
           val tagKeyword: string -> TaggedText
  
positive.code:     open Microsoft.FSharp.Collections
      open Microsoft.FSharp.Primitives.Basics
  
  #if FSHARP_CORE
      /// Data representing structured layouts of terms.  
      // FSharp.Core.dll makes things internal and hides representations
      type internal Layout
  
      type internal LayoutTag
  
      [<Class>]
      type internal TaggedText =
          member Tag: LayoutTag
          member Text: string
  
  #else  // FSharp.Compiler.Service.dll, fsc.exe
  
      /// Data representing joints in structured layouts of terms.  The representation
      /// of this data type is only for the consumption of formatting engines.
  
negative.code: // Copyright (c) Microsoft Corporation.  All Rights Reserved.  See License.txt in the project root for license information.
  
  // This file is compiled twice in the codebase
  //    - as the internal implementation of printf '%A' formatting 
  //    - as the internal implementation of structured formatting in FSharp.Compiler.Service/Private.dll 
  //           defines: COMPILER 
  //           NOTE: this implementation is used by fsi.exe. 
  //
  // The one implementation file is used to keep the implementations of
  // structured formatting the same for fsi.exe and '%A' printing. However fsi.exe may have
  // a richer feature set.
  //
  // Note no layout objects are ever transferred between the above implementations.
  
  #if COMPILER
  namespace FSharp.Compiler.TextLayout
  #else
  namespace Microsoft.FSharp.Text.StructuredPrintfImpl
  #endif
  
  