Hah! You beat me to it; I was just about to open a (more comprehensive) ticket.
The issue goes (much) further than just _tcsclen missing; there is no handling whatsoever, (as there should be), specified for the case where _MBCS is defined. This additional MSDN reference identifies what should be defined for each of _UNICODE defined, _MBCS defined, and neither defined. (It is confusingly ambiguous for the anomalous case where both_UNICODEand_MBCS might be defined concurrently; I've challenged them to clarify it, but I won't hold my breath). This legacy reference, and intervening editions may also be of interest.
I guess a complete audit of tchar.h is called for; at the very least, _MBCS handling should be specified, in addition to furnishing missing function defines such as _tcsclen.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I guess a complete audit of tchar.h is called for; at the very least, _MBCS handling should be specified, in addition to furnishing missing function defines such as _tcsclen.
Sure; output from git diff -w include/tchar.h is attached.
Technically, there are no significant non-whitespace changes, (unless you consider the coalescence of two consecutive and logically related comments into a single comment block, and the extension of one other comment block by one line. Other than those two, I removed a few blank lines which felt were superfluous, added a few more, where I felt they were needed, and predominantly, tidied up the mish-mash of inconsistently used hard tab characters.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Okay, I understand you now. I'll wait until I draft a WSL coding spec for these changes. This way we can remain consistent. This review will take place during the 5.0 development phase.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I see you ducked the issue of the third required mapping for tcsclen() -- the _MBCS defined case -- so strictly this can't be classed as completely "fixed"; I guess you plan to pick this up again, under [#1996].
Hah! You beat me to it; I was just about to open a (more comprehensive) ticket.
The issue goes (much) further than just
_tcsclenmissing; there is no handling whatsoever, (as there should be), specified for the case where_MBCSis defined. This additional MSDN reference identifies what should be defined for each of_UNICODEdefined,_MBCSdefined, and neither defined. (It is confusingly ambiguous for the anomalous case where both_UNICODEand_MBCSmight be defined concurrently; I've challenged them to clarify it, but I won't hold my breath). This legacy reference, and intervening editions may also be of interest.I guess a complete audit of
tchar.his called for; at the very least,_MBCShandling should be specified, in addition to furnishing missing function defines such as_tcsclen.[#1996]
Related
Issues: #1996
As a starting point, I've performed a (significant) format clean-up on tchar.h
Can you point out the non white space changes? Attaching a diff ignoring the white space changes would be good.
Last edit: Keith Marshall 2013-06-25
Sure; output from
git diff -w include/tchar.his attached.Technically, there are no significant non-whitespace changes, (unless you consider the coalescence of two consecutive and logically related comments into a single comment block, and the extension of one other comment block by one line. Other than those two, I removed a few blank lines which felt were superfluous, added a few more, where I felt they were needed, and predominantly, tidied up the mish-mash of inconsistently used hard tab characters.
Okay, I understand you now. I'll wait until I draft a WSL coding spec for these changes. This way we can remain consistent. This review will take place during the 5.0 development phase.
I've added the define for _tcsclen to tchar.h.
I see you ducked the issue of the third required mapping for
tcsclen()-- the_MBCS definedcase -- so strictly this can't be classed as completely "fixed"; I guess you plan to pick this up again, under [#1996].Related
Issues: #1996
Yes, that is the plan. This isn't the only _MCSB (I mean _MBSC (really I mean _MBCS)) issue.