Extended floating-point number

Sample PL/I usage C++ function
MY_PROG: PROC OPTIONS(MAIN);
     DCL CENTRY EXTERNAL ENTRY
       RETURNS (FLOAT DEC(33));
     DCL X FLOAT DEC(33);
     DCL Y FLOAT DEC(33);
     X = 12.5;
     /* BY VALUE */
     Y=CENTRY((X));
END MY_PROG;
 
#include <stdio.h>

extern "PLI" {
  long double centry(long double x);
}

long double centry(long double x)
{
  printf("x is %Lf\n",x);
  return(x);
}
 
Sample PL/I usage C++ function
MY_PROG: PROC OPTIONS(MAIN);
     DCL CENTRY EXTERNAL ENTRY
       RETURNS (FLOAT DEC(33));
     DCL X FLOAT DEC(33);
     DCL Y FLOAT DEC(33);
     X = 12.5;
     /* BY REFERENCE */
     Y=CENTRY(X);
END MY_PROG;
 
#include <stdio.h>

extern "PLI" {
  long double centry(long double *x)
}

  printf("x is %Lf\n",x);
  return(*x);
}