Digital Mars C/C++ Version Info
by Walter Bright
Copyright (c) 1997-2001 by Digital Mars. All Rights Reserved.
www.digitalmars.com
Contents:
WHAT'S NEW FOR C/C++ 8.18
- Hex floats no longer turned off by -A.
- Long longs no longer turned off by -A.
- // comments in C no longer turned off by -A.
- The default CPU target is now the Pentium Pro (-6), not the Pentium.
WHAT'S NEW FOR C/C++ 8.17
- Fixed problem with dllexport on function pointers.
- Added gc.h
- Added Hans Boehm garbage collector to rtl
- Added long double, %a and %A support to printf for win32
WHAT'S NEW FOR C/C++ 8.16
- Fixed 16 bit code gen bugs.
- Added iso646.h
- Added stdint.h
- Added stdbool.h
- Added va_copy() to stdarg.h
- Added isxxxx() floating point comparison macros to math.h
WHAT'S NEW FOR C/C++ 8.15
- Fixed spurious syntax error compiling some MFC code.
WHAT'S NEW FOR C/C++ 8.13
- Now with 32 bit X32 DOS extender support!
- Fixed code generator support for X32.
WHAT'S NEW FOR C/C++ 8.12
- Changed __i keyword to __imaginary due to numerous conflicts
with existing code.
WHAT'S NEW FOR C/C++ 8.10
- Added support for __restrict pointer syntax.
- Added support for macros with variable & blank argument lists per C99.
- Added support for __func__ per C99 6.4.2.2.
- Added __FUNCTION__ predefined macro.
- Added __PRETTY_FUNCTION__ predefined macro.
- Fixed bug in wcscmp() for 0 length strings.
- -Aa switch to SC is now the default. There is no way to turn it off.
- Added _Complex and _Imaginary type support per C99.
- Renamed C++ complex class file complex.h to oldcomplex.h.
- Added new complex.h per C99.
- Added complex library functions per C99.
- Added isinf() per C99.
- Added long double support to isxxx() functions in fp.h.
WHAT'S NEW FOR C/C++ 8.0
- Added __DMC__ predefined macro.
- Added -d switch to generate make dependency information.
- Added debug statements.
- Added debug declarations.
- Added design by contract features.
- Added ability to embed C in HTML files.
- Added native support for 80 bit long doubles (Win32 only).
- Added support for CPU bit instructions via functions in bitops.h.
- Switch -mn is now the default instead of -ms.
- 16 bit preprocessor spp.exe no longer supported - use sppn.exe.
WHAT'S NEW FOR C/C++ 7.6
- Better Code Generation
- Merged C and C++ Compilers.
They are now in the same executable. This saves disk space and testing
time.
WHAT'S NEW FOR C/C++ 7.5
Added MMX Extensions
New Intel MMX instructions now supported by the inline assembler.
Added Support for Alternative Names
With -A and the C++ compiler, the alternative representations
in the standard 2.9 are now supported. In the future, they will
become the default, so don't use the following names otherwise:
and and_eq bitand bitor compl not
not_eq or or_eq xor xor_eq
Added -B[e|f|g|j] switches
See "Definitive list of SC switches" for how they work.
The SCMSGS environment variable and SC.INI setting is no
longer supported.
Added #elseif directive, with same semantics as #elif.
Changed overload resolution rules to reflect ANSI C++ standard changes
regarding integral promotions vs integral conversions.
Added namespaces
Added -g5 switch
See "Definitive list of SC switches".
Added #pragma setlocale("locale")
See "Pragmas supported by SC/SC++".
Added _CPPRTTI and _CPPUNWIND predefined macros
See "Predefined macros".
Added New Keywords
explicit, mutable, typename - but the semantics of them aren't
implemented.
Added __unaligned Keyword
For unaligned pointer support for PowerPC. Ignored for Intel
compiler.
Added Pentium Pro Instructions to Inline Assembler and OBJ2ASM.
Added new P6 instructions:
CMOVcc
FCMOVcc
FCOMI
FCOMIP
FUCOMI
FUCOMIP
RDMPC
Added -ND switch
See "DEFINITIVE LIST OF SC SWITCHES",
and _MT and _DLL in "PREDEFINED MACROS".
-NLlibfile
Added this switch. See "DEFINITIVE LIST OF SC SWITCHES".
__wacrtused
__wacrtused_con
Added these for use in Win32 UNICODE apps. See "ACRTUSED".
SUPPORT and USER GROUPS
Digital Mars C++ is supported via newsgroups at news.digitalmars.com
To join the newsgroups:
Netscape Messenger:
- Start Netscape Messenger.
- Goto menu: Edit->Preferences.
- Expand Mail & Newsgroups in the Category tree.
- Select Newsgroup Servers
- Click Add... (at the right)
- Type the name of the server: news.digitalmars.com
- Click OK
- Close Preferences, i.e. click OK. news.digitalmars.com should appear at the bottom in
the tree with the inbox.
- Click on news.digitalmars.com with the right mouse button
- Choose Subscribe to newsgroups...
- This will give you Communicator: Subscribe to Newsgroups.
- Click Subscribe
- Close Communicator: Subscibe to Newsgroups, i.e. click OK
- Now the newsgroups you subscribed to should appear underneath news.digitalmars.com
Microsoft Outlook Express:
- Start Outlook Express
- Goto menu: Tools->Accounts...
- This will give you Internet Accounts
- Click the News tab.
- Click the Add button
- Select News
- Choose a Display Name
- Click Next
- Choose an E-mail Address
- Click Next
- Type the name of the News (NNTP) server: news.digitalmars.com.
- Click Finish
- Close Internet Accounts, i.e. click Close
- Choose Yes to the question Would you like to download newsgroups from the news account you added?
- Click c++
- Click Subscribe
- Close Newsgroup Subscriptions, i.e. click OK
- Now under the Folders tree news.digitalmars.com should appear underneath c++
Good luck!