C++ : Lack of Standardization at the Binary Level
- by Nawaz
Why ISO/ANSI didn't standardize C++ at the binary level? There are many portability issues with C++, which is only because of lack of it's standardization at the binary level.
Don Box writes, (quoting from his book Essential COM, chapter COM As A Better C++)
  C++ and Portability
  
  
  Once the decision is made to
  distribute a C++ class as a DLL, one
  is faced with one of the fundamental
  weaknesses of C++, that is, lack of
  standardization at the binary level.
  Although the ISO/ANSI C++ Draft
  Working Paper attempts to codify which
  programs will compile and what the
  semantic effects of running them will
  be, it makes no attempt to standardize
  the binary runtime model of C++. The
  first time this problem will become
  evident is when a client tries to link
  against the FastString DLL's import library from
  a C++ developement environment other
  than the one used to build the
  FastString DLL.
Are there more benefits Or loss of this lack of binary standardization?