1
0
mirror of https://github.com/golang/go synced 2024-11-18 11:14:39 -07:00
go/doc/go1.22.html
Ian Lance Taylor 251fb8e411 doc/go1.22: correct tipo languague => language
Change-Id: I11d0947d6d2ffa91745c8e36a3984ffee85abbd0
Reviewed-on: https://go-review.googlesource.com/c/go/+/528896
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@golang.org>
2023-09-18 17:33:59 +00:00

123 lines
3.1 KiB
HTML

<!--{
"Title": "Go 1.22 Release Notes",
"Path": "/doc/go1.22"
}-->
<!--
NOTE: In this document and others in this directory, the convention is to
set fixed-width phrases with non-fixed-width spaces, as in
<code>hello</code> <code>world</code>.
Do not send CLs removing the interior tags from such phrases.
-->
<style>
main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">DRAFT RELEASE NOTES — Introduction to Go 1.22</h2>
<p>
<strong>
Go 1.22 is not yet released. These are work-in-progress
release notes. Go 1.22 is expected to be released in February 2024.
</strong>
</p>
<h2 id="language">Changes to the language</h2>
<p>
TODO: complete this section
</p>
<h2 id="tools">Tools</h2>
<h3 id="go-command">Go command</h3>
<p>
TODO: complete this section, or delete if not needed
</p>
<h3 id="cgo">Cgo</h3>
<p><!-- CL 497837 --> The special comment that precedes
<code>import</code> <code>"C"</code> may now include two
new <code>#cgo</code> directives.
<ul>
<li>
<code>#cgo</code> <code>noescape</code> <code>cFunctionName</code>
tells cgo that Go pointers passed to the C function
<code>cFunctionName</code> do not escape.
</li>
<li>
<code>#cgo</code> <code>nocallback</code> <code>cFunctionName</code>
tells cgo that the C function <code>cFunctionName</code> does
not call any Go functions.
</li>
</ul>
See <a href="/cmd/cgo#hdr-Optimizing_calls_of_C_code">the <code>cgo</code>
documentation</a> for more details.
</p>
<h2 id="runtime">Runtime</h2>
<p>
TODO: complete this section, or delete if not needed
</p>
<h2 id="compiler">Compiler</h2>
<p>
TODO: complete this section, or delete if not needed
</p>
<h2 id="linker">Linker</h2>
<p>
TODO: complete this section, or delete if not needed
</p>
<h2 id="library">Core library</h2>
<h3 id="minor_library_changes">Minor changes to the library</h3>
<p>
As always, there are various minor changes and updates to the library,
made with the Go 1 <a href="/doc/go1compat">promise of compatibility</a>
in mind.
There are also various performance improvements, not enumerated here.
</p>
<p>
TODO: complete this section
</p>
<dl id="database/sql"><dt><a href="/pkg/database/sql/">database/sql</a></dt>
<dd>
<p><!-- https://go.dev/issue/60370, CL 501700 -->
The new <a href="/pkg/database/sql/#Null"><code>Null[T]</code></a> type
provide a way to scan nullable columns for any column types.
</p>
</dd>
</dl>
<dl id="reflect"><dt><a href="/pkg/reflect/">reflect</a></dt>
<dd>
<p><!-- https://go.dev/issue/61827, CL 517777 -->
The <a href="/pkg/reflect/#Value.IsZero"><code>Value.IsZero</code></a>
method will now return true for a floating-point or complex
negative zero, and will return true for a struct value if a
blank field (a field named <code>_</code>) somehow has a
non-zero value.
These changes make <code>IsZero</code> consistent with comparing
a value to zero using the language <code>==</code> operator.
</p>
</dd>
</dl>
<h2 id="ports">Ports</h2>
<p>
TODO: complete this section, or delete if not needed
</p>