windows: use UTF16FromString and UTF16ToString from syscall

This CL updates the windows.UTF16FromString and windows.UTF16ToString
implementation so they forward to their syscall counterparts.

The standard library uses these particular syscall functions across
the board as it can't depend on x/sys. This means that even if the
syscall API is frozen, the implementation still receives improvements
and bug fixes, such as CL 425054.

Porting CL 425054 to x/sys is possible, but for this particular case
I think it's better to just call the syscall package. This way both
repos will benefit from future improvements (which I plan to do soon).

Change-Id: I305c4409142d79a57008d7e6d0717fb8986fe906
Run-TryBot: Ian Lance Taylor <>
Auto-Submit: Ian Lance Taylor <>
TryBot-Result: Gopher Robot <>
Reviewed-by: Ian Lance Taylor <>
Run-TryBot: Quim Muntal <>
Reviewed-by: Bryan Mills <>
1 file changed
tree: ba13e47ad9dba8a075b6892bd18094ed85208042
  1. cpu/
  2. execabs/
  3. internal/
  4. plan9/
  5. unix/
  6. windows/
  7. .gitattributes
  8. .gitignore
  9. codereview.cfg
  11. go.mod


Go Reference

This repository holds supplemental Go packages for low-level interactions with the operating system.


The easiest way to install is to run go get -u You can also manually git clone the repository to $GOPATH/src/

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see

The main issue tracker for the sys repository is located at Prefix your issue with “x/sys:” in the subject line, so it is easy to find.