@@ -235,6 +235,7 @@ add_test(NAME test-compile-00-class-static-block COMMAND test-runner "${PROJECT_
235235add_test (NAME test -compile-00-class-discover-types COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_discover_types.ts" )
236236add_test (NAME test -compile-00-class-accessor COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_accessor.ts" )
237237add_test (NAME test -compile-00-class-accessor-2 COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_accessor2.ts" )
238+ add_test (NAME test -compile-00-class-accessor-super COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_accessor_super.ts" )
238239add_test (NAME test -compile-00-class-super COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_super.ts" )
239240add_test (NAME test -compile-00-class-super-static COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_super_static.ts" )
240241add_test (NAME test -compile-00-class-default-constructor COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_def_constr.ts" )
@@ -596,6 +597,7 @@ add_test(NAME test-jit-00-class-static-block COMMAND test-runner -jit "${PROJECT
596597add_test (NAME test -jit-00-class-discover-types COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_discover_types.ts" )
597598add_test (NAME test -jit-00-class-accessor COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_accessor.ts" )
598599add_test (NAME test -jit-00-class-accessor-2 COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_accessor2.ts" )
600+ add_test (NAME test -jit-00-class-accessor-super COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_accessor_super.ts" )
599601add_test (NAME test -jit-00-class-super COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_super.ts" )
600602add_test (NAME test -jit-00-class-super-static COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_super_static.ts" )
601603add_test (NAME test -jit-00-class-default-constructor COMMAND test -runner -jit "${PROJECT_SOURCE_DIR } /test/tester/tests/00class_def_constr.ts" )
@@ -850,6 +852,23 @@ add_test(NAME test-compile-export-import-class-interface COMMAND test-runner "${
850852add_test (NAME test -compile-export-import-class-extends COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends.ts" )
851853add_test (NAME test -compile-export-import-class-extends-multilevel COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends_multilevel.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends_multilevel.ts" )
852854add_test (NAME test -compile-export-import-class-extends-implements-diamond COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends_implements_diamond.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends_implements_diamond.ts" )
855+ add_test (NAME test -compile-export-import-class-abstract COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_abstract.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_abstract.ts" )
856+ add_test (NAME test -compile-export-import-class-static COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_static.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_static.ts" )
857+ # Cross-module generic class instantiation: DISABLED, known issue found 2026-07-22. A generic
858+ # class specialization instantiated in the IMPORTING module incorrectly inherits `export`
859+ # (dllexport) linkage from the original `export class` declaration, even though the
860+ # specialization is defined fresh, locally, in this module. For a multi-type-param generic
861+ # (Pair<A,B>) the resulting mangled name contains a raw comma
862+ # (M.Pair<!ts.number,!ts.string>..instanceOf), which is a linker-directive metacharacter -
863+ # lld rejects it with "invalid /export:". Separately, the -shared tiers fail even earlier:
864+ # once a compiled .dll/.lib for the exporting module already exists next to its .ts source,
865+ # import resolution reads declarations back from that binary artifact instead of
866+ # reparsing source, and that path has no representation for an uninstantiated generic
867+ # template at all, so the whole namespace (M) fails to resolve ("can't resolve name: M").
868+ # Re-enable once both are fixed; test files are kept in the tree (export_class_generic.ts /
869+ # import_class_generic.ts) for that follow-up.
870+ # add_test(NAME test-compile-export-import-class-generic COMMAND test-runner "${PROJECT_SOURCE_DIR}/test/tester/tests/import_class_generic.ts" "${PROJECT_SOURCE_DIR}/test/tester/tests/export_class_generic.ts")
871+ add_test (NAME test -compile-export-import-class-accessor COMMAND test -runner "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_accessor.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_accessor.ts" )
853872
854873# shared libs tests (dlls/compile-time)
855874add_test (NAME test -compile-time-shared-decl-emit-type COMMAND test -runner -shared -compile-time "${PROJECT_SOURCE_DIR } /test/tester/tests/emit_compiletime_func.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/decl_type.ts" )
@@ -878,6 +897,16 @@ add_test(NAME test-compile-shared-export-import-object-literal-with-class-types
878897add_test (NAME test -compile-shared-export-import-class-extends COMMAND test -runner -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends.ts" )
879898add_test (NAME test -compile-shared-export-import-class-extends-implements-diamond COMMAND test -runner -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends_implements_diamond.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends_implements_diamond.ts" )
880899add_test (NAME test -compile-shared-export-import-class-extends-multilevel COMMAND test -runner -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends_multilevel.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends_multilevel.ts" )
900+ add_test (NAME test -compile-shared-export-import-class-abstract COMMAND test -runner -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_abstract.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_abstract.ts" )
901+ add_test (NAME test -compile-shared-export-import-class-static COMMAND test -runner -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_static.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_static.ts" )
902+ # DISABLED: see the matching test-compile-export-import-class-generic comment above (known issue, 2026-07-22).
903+ # add_test(NAME test-compile-shared-export-import-class-generic COMMAND test-runner -shared "${PROJECT_SOURCE_DIR}/test/tester/tests/import_class_generic.ts" "${PROJECT_SOURCE_DIR}/test/tester/tests/export_class_generic.ts")
904+ # DISABLED: known issue found 2026-07-22 (separate from the super-accessor-call crash fixed
905+ # above). Under the -shared dynamic-import path, a base class's get/set accessors are not
906+ # resolvable at all from a derived class in another module ("Class member 'celsius' can't be
907+ # found") - the same class of gap as the disabled generic-class tests: declaration
908+ # reconstruction for a dynamically-imported class is incomplete for some member kinds.
909+ # add_test(NAME test-compile-shared-export-import-class-accessor COMMAND test-runner -shared "${PROJECT_SOURCE_DIR}/test/tester/tests/import_class_accessor.ts" "${PROJECT_SOURCE_DIR}/test/tester/tests/export_class_accessor.ts")
881910add_test (NAME test -compile-shared-export-import-object-literal-with-interface COMMAND test -runner -shared -gctors-as-method "${PROJECT_SOURCE_DIR } /test/tester/tests/import_object_literal_with_interface.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_object_literal_with_interface.ts" )
882911add_test (NAME test -compile-shared-export-import-object-literal-untyped COMMAND test -runner -shared -gctors-as-method "${PROJECT_SOURCE_DIR } /test/tester/tests/import_object_literal_untyped.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_object_literal_untyped.ts" )
883912add_test (NAME test -compile-shared-export-import-object-literal-untyped-multi-method COMMAND test -runner -shared -gctors-as-method "${PROJECT_SOURCE_DIR } /test/tester/tests/import_object_literal_untyped_multi_method.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_object_literal_untyped_multi_method.ts" )
@@ -907,6 +936,12 @@ add_test(NAME test-jit-shared-export-import-object-literal-with-class-types COMM
907936add_test (NAME test -jit-shared-export-import-class-extends COMMAND test -runner -jit -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends.ts" )
908937add_test (NAME test -jit-shared-export-import-class-extends-multilevel COMMAND test -runner -jit -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends_multilevel.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends_multilevel.ts" )
909938add_test (NAME test -jit-shared-export-import-class-extends-implements-diamond COMMAND test -runner -jit -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_extends_implements_diamond.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_extends_implements_diamond.ts" )
939+ add_test (NAME test -jit-shared-export-import-class-abstract COMMAND test -runner -jit -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_abstract.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_abstract.ts" )
940+ add_test (NAME test -jit-shared-export-import-class-static COMMAND test -runner -jit -shared "${PROJECT_SOURCE_DIR } /test/tester/tests/import_class_static.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_class_static.ts" )
941+ # DISABLED: see the matching test-compile-export-import-class-generic comment above (known issue, 2026-07-22).
942+ # add_test(NAME test-jit-shared-export-import-class-generic COMMAND test-runner -jit -shared "${PROJECT_SOURCE_DIR}/test/tester/tests/import_class_generic.ts" "${PROJECT_SOURCE_DIR}/test/tester/tests/export_class_generic.ts")
943+ # DISABLED: see the matching test-compile-shared-export-import-class-accessor comment above (known issue, 2026-07-22).
944+ # add_test(NAME test-jit-shared-export-import-class-accessor COMMAND test-runner -jit -shared "${PROJECT_SOURCE_DIR}/test/tester/tests/import_class_accessor.ts" "${PROJECT_SOURCE_DIR}/test/tester/tests/export_class_accessor.ts")
910945add_test (NAME test -jit-shared-export-import-object-literal-with-interface COMMAND test -runner -jit -shared -gctors-as-method "${PROJECT_SOURCE_DIR } /test/tester/tests/import_object_literal_with_interface.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_object_literal_with_interface.ts" )
911946add_test (NAME test -jit-shared-export-import-object-literal-untyped COMMAND test -runner -jit -shared -gctors-as-method "${PROJECT_SOURCE_DIR } /test/tester/tests/import_object_literal_untyped.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_object_literal_untyped.ts" )
912947add_test (NAME test -jit-shared-export-import-object-literal-untyped-multi-method COMMAND test -runner -jit -shared -gctors-as-method "${PROJECT_SOURCE_DIR } /test/tester/tests/import_object_literal_untyped_multi_method.ts" "${PROJECT_SOURCE_DIR } /test/tester/tests/export_object_literal_untyped_multi_method.ts" )
0 commit comments