I think you can portably detect the failure case with the errno=0 method, rather than relying on #ifdef.
- bug#10021: [PATCH id] Add error-checking... Paul Eggert
- bug#10021: [PATCH id] Add error-checking... Ludovic Courtès
- bug#10021: [PATCH id] Add error-checking... Eric Blake
- bug#10021: [PATCH id] Add error-checking... Eric Blake
- bug#10021: [PATCH id] Add error-checking... Jim Meyering
- bug#10021: [PATCH id] Add error-checking... Paul Eggert
- bug#10021: [PATCH id] Add error-checking... Paul Eggert
- bug#10021: [PATCH id] Add error-checking... Jim Meyering
- bug#10021: [PATCH id] Add error-checking... Paul Eggert
- bug#10021: [PATCH id] Add error-checking... Paul Eggert
- bug#10021: [PATCH id] Add error-checking... Roland McGrath
- bug#10021: [PATCH id] Add error-checking on GNU Jim Meyering
- bug#10021: [PATCH id] Add error-checking on GNU Ludovic Courtès
- bug#10021: [PATCH id] Add error-checking on GNU Jim Meyering
