FORTRAN interface
SUBROUTINE DSYCONV( UPLO, WAY, N, A, LDA, IPIV, WORK, INFO )
has argument WORK which contains some useful information on exit:
DSYCONV convert A given by TRF into L and D and vice-versa.
Get Non-diag elements of D (returned in workspace) and
apply or reverse permutation done in TRF.
Look at
lapack_int LAPACKE_dsyconv( int matrix_layout, char uplo, char way, lapack_int n,
double* a, lapack_int lda, const lapack_int* ipiv )
The argument work is omitted and there is no way to get non-diag elements of D.
This is a bug because work array is used to pass off-diagonal elements of matrix D:

