BUG: Windows NT Version 4.0 Bug List - MIDL

ID: Q165280

The information in this article applies to:

SUMMARY

This article lists the bugs in the implementation of the Win32 API on Windows NT 4.0 that may be relevant to Application or Device Driver developers (ISVs or IHVs). This article contains only those bugs that were known at the time of the Windows NT 4.0 release.

MORE INFORMATION

   MIDL does not resolve ambiguous references using the same search
   order as mktyplib.

   MIDL: Arrays bigger than 64k not supported as IDL pipe elements
   Exception 0xC003005E may occur when using big fix-sized arrays with
   RPC pipes.

   MIDL generates code that uses an undeclared variable when interface
   procedure contains a two dimensional matrix as an out param in -Os
   mode.

   MIDL: AV when union with no switch is embedded in a struct referred
   to by a forward reference.

   MIDL only allows predeclid to be applied to properties.

   MIDL allows multiple types mapped to the same user_mrsh type.

   MIDL: Pointer to pointer to struct may cause server side memory leak.

   MIDL: Overloading some intrinsic types in a type library generates
   an error.

   MIDL does not support commas in constants localized for German, etc.

   MIDL: Inferring pointer decoration differs between DEC idl compiler
   and MIDL.

   MIDL: structs with conformant varying arrays of structs not
   marshaled properly.

   MIDL: TCHAR typedef should be removed from wtypes.idl as misleading
   TCHAR typedef'd in wtypes.idl as WCHAR even if UNICODE is not
   Defined.

   MIDL accepts duplicate uuids for structs.

   MIDL: may compute wrong struct size for struct containing
   user_marshal types at -Zp4.

   MIDL: helpstrings not placed on functions with multiple put
   properties.

   MIDL: dispinterface, interface conflict in coclass not flagged.

   MIDL: /win16 switch places _stdcall instead of _cdecl on all methods
   when processing a library block.

   MIDL: unused typedefs inside of an interface definition are not
   emitted to type library.

   MIDL: Full pointer to a user_marshal type, when used in a non-object
   interface in a struct or union, is overwritten if declared [in,out].

   MIDL: Should generate a warning when conformant structs passed by
   Value.

   MIDL: Range checking should be applied to constants.

   MIDL: DCE error codes for pipes not supported.

The following problems have been fixed in MIDL version 3.1.75:

   MIDL allows importlib outside of library block.

   MIDL: Interop problems with OSF machines when
   [comm_status, fault_status] only specified in acf file.

   MIDL: emits code that initializes a const variable with 0xff.

   MIDL: Name of coclass used instead of typedef'd name specified in
   Odl.

   MIDL: Signed negative constants are emitted to header file with two
   preceding '-' signs.

   MIDL: const floating point constants placed in quotes, but '-' sign
   placed outside the quotes.

   MIDL doesn't support helpstringdll attribute.

Keywords          : kblist kbNTOS400bug kbSDKPlatform kbSDKWin32 kbbuglist
Version           : winnt:4.0
Platform          : NT WINDOWS
Issue type        : kbbug

Last Reviewed: November 28, 1997