text: //// [ambiguousOverloadResolution.ts]
  class A { }
  class B extends A { x: number; }
  
  declare function f(p: A, q: B): number;
  declare function f(p: B, q: A): string;
  
  var x: B;
  var t: number = f(x, x); // Not an error
  
  //// [ambiguousOverloadResolution.js]
  var __extends = (this && this.__extends) || function (d, b) {
      for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
      function __() { this.constructor = d; }
      __.prototype = b.prototype;
      d.prototype = new __();
  };
  var A = (function () {
      function A() {
      }
      return A;
  })();
  var B = (function (_super) {
      __extends(B, _super);
      function B() {
          _super.apply(this, arguments);
      }
      return B;
  })(A);
  var x;
  var t = f(x, x); // Not an error
  