Previously, redirected source files merged the same way as other source files, effectively causing the target of the redirection to be merged twice. mergeSymbol now has an assert (`source===target`) that catches this condition, so this change makes sure to skip redirected source files. This change doesn't apply to the preceding binding loop, since the binder handles already-bound source files correctly.
22 lines
624 B
TypeScript
22 lines
624 B
TypeScript
// @noImplicitReferences: true
|
|
|
|
// @Filename: /src/index.ts
|
|
import * as React from 'react';
|
|
export var x = 1
|
|
// @Filename: /tests/index.ts
|
|
import * as React from 'react';
|
|
export var y = 2
|
|
|
|
// @Filename: /tests/node_modules/@types/react/package.json
|
|
{ "name": "@types/react", "version": "16.4.6" }
|
|
// @Filename: /tests/node_modules/@types/react/index.d.ts
|
|
|
|
// @Filename: /node_modules/@types/react/package.json
|
|
{ "name": "@types/react", "version": "16.4.6" }
|
|
// @Filename: /node_modules/@types/react/index.d.ts
|
|
declare global { }
|
|
|
|
// @Filename: /src/bug25410.ts
|
|
import { x } from './index'
|
|
import { y } from '../tests/index'
|