OSF DCE Problem Determination Guide

OSF DCE Problem Determination Guide
Explanation: An enumeration type with the <kw>([v1_enum]) attribute follows NCS
Version 1 NIDL semantics, and does not allow pointers to enumerations except as a
reference passing mechanism on a parameter.
Action: If compatibility with NCS Version 1 NIDL is not necessary, remove the
<kw>([v1_enum]) attribute.
0x132830ce NIDL_PTRVARYARR
Severity: Varies Component: idl
Text: Pointers to varying arrays are not allowed
Explanation: An IDL declaration attempts to use mixed pointer <kw>(*) and array
<kw>([]) syntax to declare a pointer to an array that has varying bounds. Usually, it is
ambiguous whether size attributes apply to the pointer or the array, thus IDL does not
allow mixing pointer and array syntax when size attributes are present.
Action: If the declaration is a parameter declaration and the top-level <kw>(*) is a
pointer to an array, that <kw>(*) is unnecessary. This is because arrays are implicitly
passed by reference, as in C. Remove the top-level <kw>(*). If the declaration is more
complex, investigate alternative ways to achieve results, such as using a pointer to a
structure that has the required information.
0x132830cf NIDL_PTRVOIDCTX
Severity: Varies Component: idl
Text: void * must be used in conjunction with the [context_handle] attribute
Explanation: The only valid use of a <kw>(void *) data type in an interface definition is
on an item with the <kw>([context_handle]) attribute.
Action: Change the data type in the declaration, or add the <kw>([context_handle])
attribute.
0x132830d0 NIDL_REFATTRPTR
Severity: Varies Component: idl
Text: The attribute [ref] is valid only for pointer types or array parameter types
Explanation: The <kw>([ref]) attribute modifies the default behavior of any pointer type
or an array parameter data type. It is not valid on other data types. Note that a
<kw>(void *) object is not considered a pointer.
Action: There may be a missing <kw>(*) in your declaration. If not, remove the
<kw>([ref]) attribute.
0x132830d1 NIDL_REFFUNRES
Severity: Varies Component: idl
Text: A [ref] function result is not valid
Explanation: Unlike <kw>([out]) parameters, there is never any pre-existing storage in
the caller for pointer valued function results. The pointer always indicates new storage.
2 452 Tandem Computers Incorporated 124330