Extended floating-point number

Sample C++ usage PL/I subroutine
#include <stdio.h>

extern "PLI" {
  long double cpli(long double);
}

main()
{
  long double x, y;
  x=12.1
  y=cpli(x); /* by value    */
}
 
CPLI: PROC(ARG) RETURNS (FLOAT BIN(109));
    DCL ARG FLOAT BIN(109);
⋮
    RETURN (ARG);
    END;
 
Sample C++ usage PL/I subroutine
#include <stdio.h>

extern "PLI" {
  long double cpli(long double*);
}

main()
{
  long double x, y;
  x=12.1
  y=cpli(&x);     /* by reference */
}
 
CPLI: PROC(ARG)
    RETURNS (FLOAT BIN(109));
    DCL ARG FLOAT BIN(109);
⋮
    RETURN (ARG);
    END;