待辦事項 #40848

update errno.h ENOTSUP + EOVERFLOW

啟用日期: 2020-10-09 06:51 最後更新: 2020-10-10 05:08

回報者:
負責人:
(無)
類型:
狀態:
關閉
元件:
(無)
里程碑:
(無)
優先權:
5 - 中
嚴重程度:
5 - 中
處理結果:
Rejected
檔案:
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

細節

I needed to include the following into errno.h to be able to build a recent version of binutils:

  1. /* necessary to build recent binutils: */
  2. #define ENOTSUP 129
  3. #define EOVERFLOW 132

and suggest this may be done in general.

Ticket History (2/2 Histories)

2020-10-09 06:51 Updated by: osdn-mensch
  • New Ticket "update errno.h ENOTSUP + EOVERFLOW" created
2020-10-10 05:08 Updated by: keith
  • 狀態 Update from 開啟 to 關閉
  • 處理結果 Update from to Rejected
評語

That would be a bug in binutils, then; you should file a bug report on their tracker.

On what basis have you chosen the values 129, and 132? Both are greater than Windows' _sys_nerr limit, and will thus produce unacceptable results, if passed to strerror(), or perror(). Consequently, I will not accept that, as a general principle, these definitions may be arbitrarily adopted.

FWIW, the recommended work-around for this issue is, in the client code, after including <errno.h>, to insert definitions such as

  1. #ifndef ENOTSUP
  2. #define ENOTSUP ENOSYS
  3. #endif
  4. #ifndef EOVERFLOW
  5. #define EOVERFLOW ERANGE
  6. #endif

Attachment File List

No attachments

編輯

Please login to add comment to this ticket » 登入