C/C++ Compiler (cl.hlp) (
Table of Contents;
Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
Language Extensions: Details
◄Up► ◄Contents► ◄Index► ◄Back►
─────C/C++ Compiler─────────────────────────────────────────────────────────
Microsoft Extensions to the C language include the following:
■ The __based, __cdecl, __far, __fastcall, __fortran, __huge,
__near, __pascal, __stdcall, __syscall, and __interrupt
keywords
■ Use of a cast expression as an l-value
■ Redefinition of extern items as static
■ Use of trailing commas (,) rather than an ellipsis (...) in
function declarations to indicate variable-length argument
lists
■ Use of benign typedef redefinitions within the same scope
■ Mixing character and string constants in a single
initialization expression
■ Use of bit fields with base types other than unsigned int or
signed int
■ Single-line comments
■ Casting between data pointers and function pointers
■ Function declarator given file scope
■ Declarators without a storage class or a type allowed
■ Nested nameless struct/union
■ Zero-sized arrays in struct/union
■ Block-scope variables can be initialized with nonconstant
expressions
■ Previous function declarator specifies a variable number of
arguments, but the function definition provides a type instead
See: ◄Enabling and Disabling Language Extensions (/Ze, /Za)►
◄Debugging and Syntax Checking►
◄Generating Function Declarations (/Zg)►
◄Omitting Default Library Name from Object File (/Zl)►
◄Packing Structure Members (/Zp)►
-♦-