CORBA 3.5b1 RTF Avatar
  1. OMG Issue

CORBA35 — Clarify the permitted scale range for fixed TypeCodes

  • Key: CORBA35-613
  • Status: open  
  • Source: Remedy IT ( Johnny Willemsen)
  • Summary:

    CORBA 3.4 Part 1 defines ORB::create_fixed_tc(unsigned short digits, short scale) in §8.11.3 and Repository::create_fixed(unsigned short digits, short scale) in §14.5.6.2. The text for create_fixed says digits must be 1 through 31, but does not state the permitted range for scale. §14.5.17 describes FixedDef::scale only as the position of the decimal point.

    The latest OMG IDL specification (IDL 4.2, §7.4.1.4.4.3.4) defines fixed_pt_type with positive_int_const for both digits and scale, which appears to prohibit scale zero in an IDL declaration. This leaves unclear whether dynamically constructed CORBA TypeCodes may use scale zero (for example, create_fixed_tc(31, 0)), and what scale constraints and wire semantics apply if they may.

    Please clarify the allowed scale range for CORBA fixed TypeCodes and explicitly state whether zero is legal. If the TypeCode API permits zero while IDL declarations do not, please explain the distinction and define the required behavior. If zero is not legal, please state the API constraint so implementations can reject it consistently. This would resolve ambiguity for applications that infer fixed TypeCodes for integral values and help keep TypeCode construction and IDL-defined types interoperable.

  • Reported: CORBA 3.4 — Tue, 29 Sep 2026 08:25 GMT
  • Updated: Thu, 8 Oct 2026 16:05 GMT