Earlier quoted context omitted.
Of course it does, as I said I was doing that. Borland C++ for Windows 3.x had an initial implementation for templates as they started to be discussed at ANSI and also supported exporting classes across dlls, providing both producer and consumer were Borland C++.
How exactly did that implementation work for templates?
Here is the link for the Borland C++ compiler documentation, I was actually using the Turbo C++ version for Windows 3.1.
https://archive.org/details/bitsavers_borlandborn3.1Programm...
The BIDS, Borland International Data Structures were the template based library that replaced the object based one and could be accessible as a DLL as well.
To export classes from DLL one would do something like
// On the DLL side
class _export MyClass {...}
// On the consumer side
class huge MyClass {...}
Described on page 336 of the manual.If you check the the templates documentation, the generated code code could be externalized, page 152, via the -Jgx.
I was only a BIDS user across DLLs, but I can easily imagine a combination of _export/huge and -Jgd/-Jgx being what was necessary to make it all work.