mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-04 21:53:42 -06:00
Negative test cases for collision of export and require declaration names
This commit is contained in:
parent
a87a7794f4
commit
7b45cdf9b3
@ -0,0 +1,50 @@
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndAmbientClass.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndAmbientClass_externalmodule.ts]
|
||||
export declare class require {
|
||||
}
|
||||
export declare class exports {
|
||||
}
|
||||
declare module m1 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export declare class require {
|
||||
}
|
||||
export declare class exports {
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientClass_globalFile.ts]
|
||||
declare class require {
|
||||
}
|
||||
declare class exports {
|
||||
}
|
||||
declare module m3 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export declare class require {
|
||||
}
|
||||
export declare class exports {
|
||||
}
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientClass_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
var m2;
|
||||
(function (m2) {
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndAmbientClass_globalFile.js]
|
||||
var m4;
|
||||
(function (m4) {
|
||||
var a = 10;
|
||||
})(m4 || (m4 = {}));
|
||||
@ -0,0 +1,57 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientClass_externalmodule.ts ===
|
||||
export declare class require {
|
||||
>require : require
|
||||
}
|
||||
export declare class exports {
|
||||
>exports : exports
|
||||
}
|
||||
declare module m1 {
|
||||
>m1 : typeof m1
|
||||
|
||||
class require {
|
||||
>require : require
|
||||
}
|
||||
class exports {
|
||||
>exports : exports
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
>m2 : typeof m2
|
||||
|
||||
export declare class require {
|
||||
>require : require
|
||||
}
|
||||
export declare class exports {
|
||||
>exports : exports
|
||||
}
|
||||
}
|
||||
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientClass_globalFile.ts ===
|
||||
declare class require {
|
||||
>require : require
|
||||
}
|
||||
declare class exports {
|
||||
>exports : exports
|
||||
}
|
||||
declare module m3 {
|
||||
>m3 : typeof m3
|
||||
|
||||
class require {
|
||||
>require : require
|
||||
}
|
||||
class exports {
|
||||
>exports : exports
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
>m4 : typeof m4
|
||||
|
||||
export declare class require {
|
||||
>require : require
|
||||
}
|
||||
export declare class exports {
|
||||
>exports : exports
|
||||
}
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
@ -0,0 +1,72 @@
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndAmbientEnum.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndAmbientEnum_externalmodule.ts]
|
||||
export declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
declare module m1 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientEnum_globalFile.ts]
|
||||
declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
declare module m3 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientEnum_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
var m2;
|
||||
(function (m2) {
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndAmbientEnum_globalFile.js]
|
||||
var m4;
|
||||
(function (m4) {
|
||||
})(m4 || (m4 = {}));
|
||||
@ -0,0 +1,127 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientEnum_externalmodule.ts ===
|
||||
export declare enum require {
|
||||
>require : require
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : require
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : require
|
||||
}
|
||||
export declare enum exports {
|
||||
>exports : exports
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : exports
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : exports
|
||||
}
|
||||
declare module m1 {
|
||||
>m1 : typeof m1
|
||||
|
||||
enum require {
|
||||
>require : require
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : require
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : require
|
||||
}
|
||||
enum exports {
|
||||
>exports : exports
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : exports
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : exports
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
>m2 : typeof m2
|
||||
|
||||
export declare enum require {
|
||||
>require : require
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : require
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : require
|
||||
}
|
||||
export declare enum exports {
|
||||
>exports : exports
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : exports
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : exports
|
||||
}
|
||||
}
|
||||
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientEnum_globalFile.ts ===
|
||||
declare enum require {
|
||||
>require : require
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : require
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : require
|
||||
}
|
||||
declare enum exports {
|
||||
>exports : exports
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : exports
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : exports
|
||||
}
|
||||
declare module m3 {
|
||||
>m3 : typeof m3
|
||||
|
||||
enum require {
|
||||
>require : require
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : require
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : require
|
||||
}
|
||||
enum exports {
|
||||
>exports : exports
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : exports
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : exports
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
>m4 : typeof m4
|
||||
|
||||
export declare enum require {
|
||||
>require : require
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : require
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : require
|
||||
}
|
||||
export declare enum exports {
|
||||
>exports : exports
|
||||
|
||||
_thisVal1,
|
||||
>_thisVal1 : exports
|
||||
|
||||
_thisVal2,
|
||||
>_thisVal2 : exports
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
//// [collisionExportsRequireAndAmbientFunction.ts]
|
||||
export declare function exports(): number;
|
||||
|
||||
export declare function require(): string[];
|
||||
|
||||
declare module m1 {
|
||||
function exports(): string;
|
||||
function require(): number;
|
||||
}
|
||||
module m2 {
|
||||
export declare function exports(): string;
|
||||
export declare function require(): string[];
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientFunction.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
var m2;
|
||||
(function (m2) {
|
||||
var a = 10;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
@ -0,0 +1,28 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientFunction.ts ===
|
||||
export declare function exports(): number;
|
||||
>exports : () => number
|
||||
|
||||
export declare function require(): string[];
|
||||
>require : () => string[]
|
||||
|
||||
declare module m1 {
|
||||
>m1 : typeof m1
|
||||
|
||||
function exports(): string;
|
||||
>exports : () => string
|
||||
|
||||
function require(): number;
|
||||
>require : () => number
|
||||
}
|
||||
module m2 {
|
||||
>m2 : typeof m2
|
||||
|
||||
export declare function exports(): string;
|
||||
>exports : () => string
|
||||
|
||||
export declare function require(): string[];
|
||||
>require : () => string[]
|
||||
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
//// [collisionExportsRequireAndAmbientFunctionInGlobalFile.ts]
|
||||
declare function exports(): number;
|
||||
declare function require(): string;
|
||||
declare module m3 {
|
||||
function exports(): string[];
|
||||
function require(): number[];
|
||||
}
|
||||
module m4 {
|
||||
export declare function exports(): string;
|
||||
export declare function require(): string;
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientFunctionInGlobalFile.js]
|
||||
var m4;
|
||||
(function (m4) {
|
||||
var a = 10;
|
||||
})(m4 || (m4 = {}));
|
||||
@ -0,0 +1,28 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientFunctionInGlobalFile.ts ===
|
||||
declare function exports(): number;
|
||||
>exports : () => number
|
||||
|
||||
declare function require(): string;
|
||||
>require : () => string
|
||||
|
||||
declare module m3 {
|
||||
>m3 : typeof m3
|
||||
|
||||
function exports(): string[];
|
||||
>exports : () => string[]
|
||||
|
||||
function require(): number[];
|
||||
>require : () => number[]
|
||||
}
|
||||
module m4 {
|
||||
>m4 : typeof m4
|
||||
|
||||
export declare function exports(): string;
|
||||
>exports : () => string
|
||||
|
||||
export declare function require(): string;
|
||||
>require : () => string
|
||||
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
@ -0,0 +1,116 @@
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndAmbientModule.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndAmbientModule_externalmodule.ts]
|
||||
export declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export function foo(): require.I {
|
||||
return null;
|
||||
}
|
||||
export declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export function foo2(): exports.I {
|
||||
return null;
|
||||
}
|
||||
declare module m1 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientModule_globalFile.ts]
|
||||
declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
declare module m3 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
|
||||
//// [collisionExportsRequireAndAmbientModule_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
function foo() {
|
||||
return null;
|
||||
}
|
||||
exports.foo = foo;
|
||||
function foo2() {
|
||||
return null;
|
||||
}
|
||||
exports.foo2 = foo2;
|
||||
var m2;
|
||||
(function (m2) {
|
||||
var a = 10;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndAmbientModule_globalFile.js]
|
||||
var m4;
|
||||
(function (m4) {
|
||||
var a = 10;
|
||||
})(m4 || (m4 = {}));
|
||||
@ -0,0 +1,159 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientModule_externalmodule.ts ===
|
||||
export declare module require {
|
||||
>require : typeof require
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
export function foo(): require.I {
|
||||
>foo : () => require.I
|
||||
>require : unknown
|
||||
>I : require.I
|
||||
|
||||
return null;
|
||||
}
|
||||
export declare module exports {
|
||||
>exports : typeof exports
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
export function foo2(): exports.I {
|
||||
>foo2 : () => exports.I
|
||||
>exports : unknown
|
||||
>I : exports.I
|
||||
|
||||
return null;
|
||||
}
|
||||
declare module m1 {
|
||||
>m1 : typeof m1
|
||||
|
||||
module require {
|
||||
>require : typeof require
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
>exports : typeof exports
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
>m2 : typeof m2
|
||||
|
||||
export declare module require {
|
||||
>require : typeof require
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
export declare module exports {
|
||||
>exports : typeof exports
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientModule_globalFile.ts ===
|
||||
declare module require {
|
||||
>require : typeof require
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
declare module exports {
|
||||
>exports : typeof exports
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
declare module m3 {
|
||||
>m3 : typeof m3
|
||||
|
||||
module require {
|
||||
>require : typeof require
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
>exports : typeof exports
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
>m4 : typeof m4
|
||||
|
||||
export declare module require {
|
||||
>require : typeof require
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
export declare module exports {
|
||||
>exports : typeof exports
|
||||
|
||||
export interface I {
|
||||
>I : I
|
||||
}
|
||||
export class C {
|
||||
>C : C
|
||||
}
|
||||
}
|
||||
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
|
||||
@ -0,0 +1,40 @@
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndAmbientVar.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndAmbientVar_externalmodule.ts]
|
||||
export declare var exports: number;
|
||||
export declare var require: string;
|
||||
declare module m1 {
|
||||
var exports: string;
|
||||
var require: number;
|
||||
}
|
||||
module m2 {
|
||||
export declare var exports: number;
|
||||
export declare var require: string;
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientVar_globalFile.ts]
|
||||
declare var exports: number;
|
||||
declare var require: string;
|
||||
declare module m3 {
|
||||
var exports: string;
|
||||
var require: number;
|
||||
}
|
||||
module m4 {
|
||||
export declare var exports: string;
|
||||
export declare var require: number;
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndAmbientVar_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
var m2;
|
||||
(function (m2) {
|
||||
var a = 10;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndAmbientVar_globalFile.js]
|
||||
var m4;
|
||||
(function (m4) {
|
||||
var a = 10;
|
||||
})(m4 || (m4 = {}));
|
||||
@ -0,0 +1,57 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientVar_externalmodule.ts ===
|
||||
export declare var exports: number;
|
||||
>exports : number
|
||||
|
||||
export declare var require: string;
|
||||
>require : string
|
||||
|
||||
declare module m1 {
|
||||
>m1 : typeof m1
|
||||
|
||||
var exports: string;
|
||||
>exports : string
|
||||
|
||||
var require: number;
|
||||
>require : number
|
||||
}
|
||||
module m2 {
|
||||
>m2 : typeof m2
|
||||
|
||||
export declare var exports: number;
|
||||
>exports : number
|
||||
|
||||
export declare var require: string;
|
||||
>require : string
|
||||
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
|
||||
=== tests/cases/compiler/collisionExportsRequireAndAmbientVar_globalFile.ts ===
|
||||
declare var exports: number;
|
||||
>exports : number
|
||||
|
||||
declare var require: string;
|
||||
>require : string
|
||||
|
||||
declare module m3 {
|
||||
>m3 : typeof m3
|
||||
|
||||
var exports: string;
|
||||
>exports : string
|
||||
|
||||
var require: number;
|
||||
>require : number
|
||||
}
|
||||
module m4 {
|
||||
>m4 : typeof m4
|
||||
|
||||
export declare var exports: string;
|
||||
>exports : string
|
||||
|
||||
export declare var require: number;
|
||||
>require : number
|
||||
|
||||
var a = 10;
|
||||
>a : number
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
==== tests/cases/compiler/collisionExportsRequireAndClass.ts (2 errors) ====
|
||||
==== tests/cases/compiler/collisionExportsRequireAndClass_externalmodule.ts (2 errors) ====
|
||||
export class require {
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'require'. Compiler reserves name 'require' in top level scope of an external module.
|
||||
@ -7,4 +7,33 @@
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'exports'. Compiler reserves name 'exports' in top level scope of an external module.
|
||||
}
|
||||
|
||||
module m1 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
}
|
||||
|
||||
==== tests/cases/compiler/collisionExportsRequireAndClass_globalFile.ts (0 errors) ====
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
module m3 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
}
|
||||
@ -1,11 +1,42 @@
|
||||
//// [collisionExportsRequireAndClass.ts]
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndClass.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndClass_externalmodule.ts]
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
module m1 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndClass_globalFile.ts]
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
module m3 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndClass.js]
|
||||
//// [collisionExportsRequireAndClass_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
var require = (function () {
|
||||
function require() {
|
||||
@ -19,4 +50,71 @@ define(["require", "exports"], function (require, exports) {
|
||||
return exports;
|
||||
})();
|
||||
exports.exports = exports;
|
||||
var m1;
|
||||
(function (m1) {
|
||||
var require = (function () {
|
||||
function require() {
|
||||
}
|
||||
return require;
|
||||
})();
|
||||
var exports = (function () {
|
||||
function exports() {
|
||||
}
|
||||
return exports;
|
||||
})();
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
var require = (function () {
|
||||
function require() {
|
||||
}
|
||||
return require;
|
||||
})();
|
||||
m2.require = require;
|
||||
var exports = (function () {
|
||||
function exports() {
|
||||
}
|
||||
return exports;
|
||||
})();
|
||||
m2.exports = exports;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndClass_globalFile.js]
|
||||
var require = (function () {
|
||||
function require() {
|
||||
}
|
||||
return require;
|
||||
})();
|
||||
var exports = (function () {
|
||||
function exports() {
|
||||
}
|
||||
return exports;
|
||||
})();
|
||||
var m3;
|
||||
(function (m3) {
|
||||
var require = (function () {
|
||||
function require() {
|
||||
}
|
||||
return require;
|
||||
})();
|
||||
var exports = (function () {
|
||||
function exports() {
|
||||
}
|
||||
return exports;
|
||||
})();
|
||||
})(m3 || (m3 = {}));
|
||||
var m4;
|
||||
(function (m4) {
|
||||
var require = (function () {
|
||||
function require() {
|
||||
}
|
||||
return require;
|
||||
})();
|
||||
m4.require = require;
|
||||
var exports = (function () {
|
||||
function exports() {
|
||||
}
|
||||
return exports;
|
||||
})();
|
||||
m4.exports = exports;
|
||||
})(m4 || (m4 = {}));
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
==== tests/cases/compiler/collisionExportsRequireAndEnum.ts (2 errors) ====
|
||||
==== tests/cases/compiler/collisionExportsRequireAndEnum_externalmodule.ts (2 errors) ====
|
||||
export enum require { // Error
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'require'. Compiler reserves name 'require' in top level scope of an external module.
|
||||
@ -10,4 +10,54 @@
|
||||
!!! Duplicate identifier 'exports'. Compiler reserves name 'exports' in top level scope of an external module.
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
module m1 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
==== tests/cases/compiler/collisionExportsRequireAndEnum_globalFile.ts (0 errors) ====
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
module m3 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
@ -1,4 +1,6 @@
|
||||
//// [collisionExportsRequireAndEnum.ts]
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndEnum.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndEnum_externalmodule.ts]
|
||||
export enum require { // Error
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
@ -6,9 +8,59 @@ export enum require { // Error
|
||||
export enum exports { // Error
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
module m1 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndEnum_globalFile.ts]
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
module m3 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndEnum.js]
|
||||
//// [collisionExportsRequireAndEnum_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
(function (require) {
|
||||
require[require["_thisVal1"] = 0] = "_thisVal1";
|
||||
@ -20,4 +72,67 @@ define(["require", "exports"], function (require, exports) {
|
||||
exports[exports["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(exports.exports || (exports.exports = {}));
|
||||
var exports = exports.exports;
|
||||
var m1;
|
||||
(function (m1) {
|
||||
var require;
|
||||
(function (require) {
|
||||
require[require["_thisVal1"] = 0] = "_thisVal1";
|
||||
require[require["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(require || (require = {}));
|
||||
var exports;
|
||||
(function (exports) {
|
||||
exports[exports["_thisVal1"] = 0] = "_thisVal1";
|
||||
exports[exports["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(exports || (exports = {}));
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
(function (require) {
|
||||
require[require["_thisVal1"] = 0] = "_thisVal1";
|
||||
require[require["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(m2.require || (m2.require = {}));
|
||||
var require = m2.require;
|
||||
(function (exports) {
|
||||
exports[exports["_thisVal1"] = 0] = "_thisVal1";
|
||||
exports[exports["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(m2.exports || (m2.exports = {}));
|
||||
var exports = m2.exports;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndEnum_globalFile.js]
|
||||
var require;
|
||||
(function (require) {
|
||||
require[require["_thisVal1"] = 0] = "_thisVal1";
|
||||
require[require["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(require || (require = {}));
|
||||
var exports;
|
||||
(function (exports) {
|
||||
exports[exports["_thisVal1"] = 0] = "_thisVal1";
|
||||
exports[exports["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(exports || (exports = {}));
|
||||
var m3;
|
||||
(function (m3) {
|
||||
var require;
|
||||
(function (require) {
|
||||
require[require["_thisVal1"] = 0] = "_thisVal1";
|
||||
require[require["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(require || (require = {}));
|
||||
var exports;
|
||||
(function (exports) {
|
||||
exports[exports["_thisVal1"] = 0] = "_thisVal1";
|
||||
exports[exports["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(exports || (exports = {}));
|
||||
})(m3 || (m3 = {}));
|
||||
var m4;
|
||||
(function (m4) {
|
||||
(function (require) {
|
||||
require[require["_thisVal1"] = 0] = "_thisVal1";
|
||||
require[require["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(m4.require || (m4.require = {}));
|
||||
var require = m4.require;
|
||||
(function (exports) {
|
||||
exports[exports["_thisVal1"] = 0] = "_thisVal1";
|
||||
exports[exports["_thisVal2"] = 1] = "_thisVal2";
|
||||
})(m4.exports || (m4.exports = {}));
|
||||
var exports = m4.exports;
|
||||
})(m4 || (m4 = {}));
|
||||
|
||||
@ -9,4 +9,19 @@
|
||||
!!! Duplicate identifier 'require'. Compiler reserves name 'require' in top level scope of an external module.
|
||||
return "require";
|
||||
}
|
||||
|
||||
module m1 {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export function exports() {
|
||||
return 1;
|
||||
}
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
@ -5,7 +5,22 @@ export function exports() {
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
|
||||
module m1 {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export function exports() {
|
||||
return 1;
|
||||
}
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndFunction.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
@ -17,4 +32,24 @@ define(["require", "exports"], function (require, exports) {
|
||||
return "require";
|
||||
}
|
||||
exports.require = require;
|
||||
var m1;
|
||||
(function (m1) {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
m2.exports = exports;
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
m2.require = require;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
|
||||
@ -0,0 +1,51 @@
|
||||
//// [collisionExportsRequireAndFunctionInGlobalFile.ts]
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
module m3 {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export function exports() {
|
||||
return 1;
|
||||
}
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndFunctionInGlobalFile.js]
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
var m3;
|
||||
(function (m3) {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
})(m3 || (m3 = {}));
|
||||
var m4;
|
||||
(function (m4) {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
m4.exports = exports;
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
m4.require = require;
|
||||
})(m4 || (m4 = {}));
|
||||
@ -0,0 +1,39 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndFunctionInGlobalFile.ts ===
|
||||
function exports() {
|
||||
>exports : () => number
|
||||
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
>require : () => string
|
||||
|
||||
return "require";
|
||||
}
|
||||
module m3 {
|
||||
>m3 : typeof m3
|
||||
|
||||
function exports() {
|
||||
>exports : () => number
|
||||
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
>require : () => string
|
||||
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
>m4 : typeof m4
|
||||
|
||||
export function exports() {
|
||||
>exports : () => number
|
||||
|
||||
return 1;
|
||||
}
|
||||
export function require() {
|
||||
>require : () => string
|
||||
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,27 @@
|
||||
==== tests/cases/compiler/collisionExportsRequireAndInternalModuleAlias.ts (2 errors) ====
|
||||
export module m {
|
||||
export class c {
|
||||
}
|
||||
}
|
||||
import exports = m.c;
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'exports'. Compiler reserves name 'exports' in top level scope of an external module.
|
||||
import require = m.c;
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'require'. Compiler reserves name 'require' in top level scope of an external module.
|
||||
new exports();
|
||||
new require();
|
||||
|
||||
module m1 {
|
||||
import exports = m.c;
|
||||
import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
module m2 {
|
||||
export import exports = m.c;
|
||||
export import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
@ -0,0 +1,54 @@
|
||||
//// [collisionExportsRequireAndInternalModuleAlias.ts]
|
||||
export module m {
|
||||
export class c {
|
||||
}
|
||||
}
|
||||
import exports = m.c;
|
||||
import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
|
||||
module m1 {
|
||||
import exports = m.c;
|
||||
import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
module m2 {
|
||||
export import exports = m.c;
|
||||
export import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndInternalModuleAlias.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
(function (m) {
|
||||
var c = (function () {
|
||||
function c() {
|
||||
}
|
||||
return c;
|
||||
})();
|
||||
m.c = c;
|
||||
})(exports.m || (exports.m = {}));
|
||||
var m = exports.m;
|
||||
var exports = m.c;
|
||||
var require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
var m1;
|
||||
(function (m1) {
|
||||
var exports = m.c;
|
||||
var require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
m2.exports = m.c;
|
||||
m2.require = m.c;
|
||||
new m2.exports();
|
||||
new m2.require();
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
@ -0,0 +1,52 @@
|
||||
//// [collisionExportsRequireAndInternalModuleAliasInGlobalFile.ts]
|
||||
module mOfGloalFile {
|
||||
export class c {
|
||||
}
|
||||
}
|
||||
import exports = mOfGloalFile.c;
|
||||
import require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
|
||||
module m1 {
|
||||
import exports = mOfGloalFile.c;
|
||||
import require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
module m2 {
|
||||
export import exports = mOfGloalFile.c;
|
||||
export import require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndInternalModuleAliasInGlobalFile.js]
|
||||
var mOfGloalFile;
|
||||
(function (mOfGloalFile) {
|
||||
var c = (function () {
|
||||
function c() {
|
||||
}
|
||||
return c;
|
||||
})();
|
||||
mOfGloalFile.c = c;
|
||||
})(mOfGloalFile || (mOfGloalFile = {}));
|
||||
var exports = mOfGloalFile.c;
|
||||
var require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
var m1;
|
||||
(function (m1) {
|
||||
var exports = mOfGloalFile.c;
|
||||
var require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
m2.exports = mOfGloalFile.c;
|
||||
m2.require = mOfGloalFile.c;
|
||||
new m2.exports();
|
||||
new m2.require();
|
||||
})(m2 || (m2 = {}));
|
||||
@ -0,0 +1,69 @@
|
||||
=== tests/cases/compiler/collisionExportsRequireAndInternalModuleAliasInGlobalFile.ts ===
|
||||
module mOfGloalFile {
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
|
||||
export class c {
|
||||
>c : c
|
||||
}
|
||||
}
|
||||
import exports = mOfGloalFile.c;
|
||||
>exports : typeof exports
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
>c : exports
|
||||
|
||||
import require = mOfGloalFile.c;
|
||||
>require : typeof exports
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
>c : exports
|
||||
|
||||
new exports();
|
||||
>new exports() : exports
|
||||
>exports : typeof exports
|
||||
|
||||
new require();
|
||||
>new require() : exports
|
||||
>require : typeof exports
|
||||
|
||||
module m1 {
|
||||
>m1 : typeof m1
|
||||
|
||||
import exports = mOfGloalFile.c;
|
||||
>exports : typeof exports
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
>c : exports
|
||||
|
||||
import require = mOfGloalFile.c;
|
||||
>require : typeof exports
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
>c : exports
|
||||
|
||||
new exports();
|
||||
>new exports() : exports
|
||||
>exports : typeof exports
|
||||
|
||||
new require();
|
||||
>new require() : exports
|
||||
>require : typeof exports
|
||||
}
|
||||
|
||||
module m2 {
|
||||
>m2 : typeof m2
|
||||
|
||||
export import exports = mOfGloalFile.c;
|
||||
>exports : typeof exports
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
>c : exports
|
||||
|
||||
export import require = mOfGloalFile.c;
|
||||
>require : typeof exports
|
||||
>mOfGloalFile : typeof mOfGloalFile
|
||||
>c : exports
|
||||
|
||||
new exports();
|
||||
>new exports() : exports
|
||||
>exports : typeof exports
|
||||
|
||||
new require();
|
||||
>new require() : exports
|
||||
>require : typeof exports
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
==== tests/cases/compiler/collisionExportsRequireAndModule.ts (2 errors) ====
|
||||
==== tests/cases/compiler/collisionExportsRequireAndModule_externalmodule.ts (2 errors) ====
|
||||
export module require {
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'require'. Compiler reserves name 'require' in top level scope of an external module.
|
||||
@ -20,4 +20,75 @@
|
||||
}
|
||||
export function foo2(): exports.I {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
module m1 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
==== tests/cases/compiler/collisionExportsRequireAndModule_globalFile.ts (0 errors) ====
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module m3 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,4 +1,6 @@
|
||||
//// [collisionExportsRequireAndModule.ts]
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndModule.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndModule_externalmodule.ts]
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
@ -16,9 +18,80 @@ export module exports {
|
||||
}
|
||||
export function foo2(): exports.I {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
module m1 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndModule.js]
|
||||
//// [collisionExportsRequireAndModule_globalFile.ts]
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module m3 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//// [collisionExportsRequireAndModule_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
(function (require) {
|
||||
var C = (function () {
|
||||
@ -46,4 +119,107 @@ define(["require", "exports"], function (require, exports) {
|
||||
return null;
|
||||
}
|
||||
exports.foo2 = foo2;
|
||||
var m1;
|
||||
(function (m1) {
|
||||
var require;
|
||||
(function (require) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
require.C = C;
|
||||
})(require || (require = {}));
|
||||
var exports;
|
||||
(function (exports) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
exports.C = C;
|
||||
})(exports || (exports = {}));
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
(function (require) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
require.C = C;
|
||||
})(m2.require || (m2.require = {}));
|
||||
var require = m2.require;
|
||||
(function (exports) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
exports.C = C;
|
||||
})(m2.exports || (m2.exports = {}));
|
||||
var exports = m2.exports;
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndModule_globalFile.js]
|
||||
var require;
|
||||
(function (require) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
require.C = C;
|
||||
})(require || (require = {}));
|
||||
var exports;
|
||||
(function (exports) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
exports.C = C;
|
||||
})(exports || (exports = {}));
|
||||
var m3;
|
||||
(function (m3) {
|
||||
var require;
|
||||
(function (require) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
require.C = C;
|
||||
})(require || (require = {}));
|
||||
var exports;
|
||||
(function (exports) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
exports.C = C;
|
||||
})(exports || (exports = {}));
|
||||
})(m3 || (m3 = {}));
|
||||
var m4;
|
||||
(function (m4) {
|
||||
(function (require) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
require.C = C;
|
||||
})(m4.require || (m4.require = {}));
|
||||
var require = m4.require;
|
||||
(function (exports) {
|
||||
var C = (function () {
|
||||
function C() {
|
||||
}
|
||||
return C;
|
||||
})();
|
||||
exports.C = C;
|
||||
})(m4.exports || (m4.exports = {}));
|
||||
var exports = m4.exports;
|
||||
})(m4 || (m4 = {}));
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
==== tests/cases/compiler/collisionExportsRequireAndVar.ts (2 errors) ====
|
||||
==== tests/cases/compiler/collisionExportsRequireAndVar_externalmodule.ts (2 errors) ====
|
||||
export function foo() {
|
||||
}
|
||||
var exports = 1;
|
||||
@ -7,4 +7,23 @@
|
||||
var require = "require";
|
||||
~~~~~~~
|
||||
!!! Duplicate identifier 'require'. Compiler reserves name 'require' in top level scope of an external module.
|
||||
|
||||
module m1 {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
}
|
||||
module m2 {
|
||||
export var exports = 0;
|
||||
export var require = "require";
|
||||
}
|
||||
|
||||
==== tests/cases/compiler/collisionExportsRequireAndVar_globalFile.ts (0 errors) ====
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
module m3 {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
}
|
||||
module m4 {
|
||||
export var exports = 0;
|
||||
export var require = "require";
|
||||
}
|
||||
@ -1,15 +1,59 @@
|
||||
//// [collisionExportsRequireAndVar.ts]
|
||||
//// [tests/cases/compiler/collisionExportsRequireAndVar.ts] ////
|
||||
|
||||
//// [collisionExportsRequireAndVar_externalmodule.ts]
|
||||
export function foo() {
|
||||
}
|
||||
var exports = 1;
|
||||
var require = "require";
|
||||
module m1 {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
}
|
||||
module m2 {
|
||||
export var exports = 0;
|
||||
export var require = "require";
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndVar_globalFile.ts]
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
module m3 {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
}
|
||||
module m4 {
|
||||
export var exports = 0;
|
||||
export var require = "require";
|
||||
}
|
||||
|
||||
//// [collisionExportsRequireAndVar.js]
|
||||
//// [collisionExportsRequireAndVar_externalmodule.js]
|
||||
define(["require", "exports"], function (require, exports) {
|
||||
function foo() {
|
||||
}
|
||||
exports.foo = foo;
|
||||
var exports = 1;
|
||||
var require = "require";
|
||||
var m1;
|
||||
(function (m1) {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
})(m1 || (m1 = {}));
|
||||
var m2;
|
||||
(function (m2) {
|
||||
m2.exports = 0;
|
||||
m2.require = "require";
|
||||
})(m2 || (m2 = {}));
|
||||
});
|
||||
//// [collisionExportsRequireAndVar_globalFile.js]
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
var m3;
|
||||
(function (m3) {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
})(m3 || (m3 = {}));
|
||||
var m4;
|
||||
(function (m4) {
|
||||
m4.exports = 0;
|
||||
m4.require = "require";
|
||||
})(m4 || (m4 = {}));
|
||||
|
||||
@ -0,0 +1,37 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndAmbientClass_externalmodule.ts
|
||||
export declare class require {
|
||||
}
|
||||
export declare class exports {
|
||||
}
|
||||
declare module m1 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export declare class require {
|
||||
}
|
||||
export declare class exports {
|
||||
}
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndAmbientClass_globalFile.ts
|
||||
declare class require {
|
||||
}
|
||||
declare class exports {
|
||||
}
|
||||
declare module m3 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export declare class require {
|
||||
}
|
||||
export declare class exports {
|
||||
}
|
||||
var a = 10;
|
||||
}
|
||||
@ -0,0 +1,60 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndAmbientEnum_externalmodule.ts
|
||||
export declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
declare module m1 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndAmbientEnum_globalFile.ts
|
||||
declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
declare module m3 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export declare enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export declare enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,14 @@
|
||||
//@module: amd
|
||||
export declare function exports(): number;
|
||||
|
||||
export declare function require(): string[];
|
||||
|
||||
declare module m1 {
|
||||
function exports(): string;
|
||||
function require(): number;
|
||||
}
|
||||
module m2 {
|
||||
export declare function exports(): string;
|
||||
export declare function require(): string[];
|
||||
var a = 10;
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
declare function exports(): number;
|
||||
declare function require(): string;
|
||||
declare module m3 {
|
||||
function exports(): string[];
|
||||
function require(): number[];
|
||||
}
|
||||
module m4 {
|
||||
export declare function exports(): string;
|
||||
export declare function require(): string;
|
||||
var a = 10;
|
||||
}
|
||||
@ -0,0 +1,93 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndAmbientModule_externalmodule.ts
|
||||
export declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export function foo(): require.I {
|
||||
return null;
|
||||
}
|
||||
export declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export function foo2(): exports.I {
|
||||
return null;
|
||||
}
|
||||
declare module m1 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndAmbientModule_globalFile.ts
|
||||
declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
declare module m3 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export declare module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export declare module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
|
||||
var a = 10;
|
||||
}
|
||||
26
tests/cases/compiler/collisionExportsRequireAndAmbientVar.ts
Normal file
26
tests/cases/compiler/collisionExportsRequireAndAmbientVar.ts
Normal file
@ -0,0 +1,26 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndAmbientVar_externalmodule.ts
|
||||
export declare var exports: number;
|
||||
export declare var require: string;
|
||||
declare module m1 {
|
||||
var exports: string;
|
||||
var require: number;
|
||||
}
|
||||
module m2 {
|
||||
export declare var exports: number;
|
||||
export declare var require: string;
|
||||
var a = 10;
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndAmbientVar_globalFile.ts
|
||||
declare var exports: number;
|
||||
declare var require: string;
|
||||
declare module m3 {
|
||||
var exports: string;
|
||||
var require: number;
|
||||
}
|
||||
module m4 {
|
||||
export declare var exports: string;
|
||||
export declare var require: number;
|
||||
var a = 10;
|
||||
}
|
||||
@ -1,5 +1,36 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndClass_externalmodule.ts
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
module m1 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndClass_globalFile.ts
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
module m3 {
|
||||
class require {
|
||||
}
|
||||
class exports {
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export class require {
|
||||
}
|
||||
export class exports {
|
||||
}
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndEnum_externalmodule.ts
|
||||
export enum require { // Error
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
@ -6,4 +7,54 @@ export enum require { // Error
|
||||
export enum exports { // Error
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
module m1 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndEnum_globalFile.ts
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
module m3 {
|
||||
enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export enum require {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
export enum exports {
|
||||
_thisVal1,
|
||||
_thisVal2,
|
||||
}
|
||||
}
|
||||
@ -5,3 +5,19 @@ export function exports() {
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
module m1 {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export function exports() {
|
||||
return 1;
|
||||
}
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
module m3 {
|
||||
function exports() {
|
||||
return 1;
|
||||
}
|
||||
function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export function exports() {
|
||||
return 1;
|
||||
}
|
||||
export function require() {
|
||||
return "require";
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,23 @@
|
||||
//@module: amd
|
||||
export module m {
|
||||
export class c {
|
||||
}
|
||||
}
|
||||
import exports = m.c;
|
||||
import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
|
||||
module m1 {
|
||||
import exports = m.c;
|
||||
import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
module m2 {
|
||||
export import exports = m.c;
|
||||
export import require = m.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
module mOfGloalFile {
|
||||
export class c {
|
||||
}
|
||||
}
|
||||
import exports = mOfGloalFile.c;
|
||||
import require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
|
||||
module m1 {
|
||||
import exports = mOfGloalFile.c;
|
||||
import require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
|
||||
module m2 {
|
||||
export import exports = mOfGloalFile.c;
|
||||
export import require = mOfGloalFile.c;
|
||||
new exports();
|
||||
new require();
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndModule_externalmodule.ts
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
@ -16,4 +17,74 @@ export module exports {
|
||||
}
|
||||
export function foo2(): exports.I {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
module m1 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m2 {
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndModule_globalFile.ts
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module m3 {
|
||||
module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
module m4 {
|
||||
export module require {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
export module exports {
|
||||
export interface I {
|
||||
}
|
||||
export class C {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,5 +1,26 @@
|
||||
//@module: amd
|
||||
//@filename: collisionExportsRequireAndVar_externalmodule.ts
|
||||
export function foo() {
|
||||
}
|
||||
var exports = 1;
|
||||
var require = "require";
|
||||
module m1 {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
}
|
||||
module m2 {
|
||||
export var exports = 0;
|
||||
export var require = "require";
|
||||
}
|
||||
|
||||
//@filename: collisionExportsRequireAndVar_globalFile.ts
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
module m3 {
|
||||
var exports = 0;
|
||||
var require = "require";
|
||||
}
|
||||
module m4 {
|
||||
export var exports = 0;
|
||||
export var require = "require";
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user