anchor.diff:  
       module internal Display =
   
  -#if FSHARP_CORE
  +#if COMPILER
  +
  +        val asTaggedTextWriter: writer: TextWriter -> TaggedTextWriter
  +
  +        val any_to_layout: options:FormatOptions -> value:'T * typValue:Type -> Layout
  +
  +        val squashTo: width: int -> layout: Layout -> Layout
  +
  +        val squash_layout: options:FormatOptions -> layout:Layout -> Layout
  +
  +        val output_layout_tagged: options:FormatOptions -> writer:TaggedTextWriter -> layout:Layout -> unit
  +
  +        val output_layout: options:FormatOptions -> writer:TextWriter -> layout:Layout -> unit
  +
  +        val layout_as_string: options:FormatOptions -> value:'T * typValue:Type -> string
  +#else
   
           // Most functions aren't needed in FSharp.Core.dll, but we add one inernal entry for printf
           val anyToStringForPrintf: options:FormatOptions -> bindingFlags:System.Reflection.BindingFlags -> value:'T * Type -> string
  -#else
  -
  -        val asTaggedTextWriter: writer: TextWriter -> TaggedTextWriter
  -
  -        val any_to_layout: options:FormatOptions -> value:'T * typValue:Type -> Layout
  -
  -        val squashTo: width: int -> layout: Layout -> Layout
  -
  -        val squash_layout: options:FormatOptions -> layout:Layout -> Layout
  -
  -        val output_layout_tagged: options:FormatOptions -> writer:TaggedTextWriter -> layout:Layout -> unit
  -
  -        val output_layout: options:FormatOptions -> writer:TextWriter -> layout:Layout -> unit
  -
  -        val layout_as_string: options:FormatOptions -> value:'T * typValue:Type -> string
   #endif
   
           /// Convert any value to a layout using the given formatting options.  The
  
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
  
  