mirror of
https://github.com/golang/go.git
synced 2026-06-29 04:10:35 +00:00
all: fix a lot of spelling mistakes
Change-Id: I86e48219ddfdf0d8607a69d7915443e8e21194d0 Reviewed-on: https://go-review.googlesource.com/c/go/+/768940 Auto-Submit: Sean Liao <sean@liao.dev> Reviewed-by: Sean Liao <sean@liao.dev> Reviewed-by: Carlos Amedee <carlos@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
This commit is contained in:
parent
b1772bacc7
commit
4e0783368b
34 changed files with 46 additions and 46 deletions
|
|
@ -4436,7 +4436,7 @@ Provided that they can be inferred, type argument lists may be omitted entirely
|
|||
<p>
|
||||
In all other cases, a (possibly partial) type argument list must be present.
|
||||
If a type argument list is absent or partial, all missing type arguments
|
||||
must be inferrable from the context in which the function is used.
|
||||
must be inferable from the context in which the function is used.
|
||||
</p>
|
||||
|
||||
<pre>
|
||||
|
|
|
|||
|
|
@ -1351,7 +1351,7 @@ func TestDeepStack(t *testing.T) {
|
|||
}
|
||||
|
||||
func BenchmarkCgoCallbackMainThread(b *testing.B) {
|
||||
// Benchmark for calling into Go fron C main thread.
|
||||
// Benchmark for calling into Go from C main thread.
|
||||
// See issue #68587.
|
||||
//
|
||||
// It uses a subprocess, which is a C binary that calls
|
||||
|
|
|
|||
|
|
@ -462,7 +462,7 @@ func GoFunc%d() {}
|
|||
|
||||
// NumberOfNames is the number of functions exported with a unique name.
|
||||
// NumberOfFunctions can be higher than that because it also counts
|
||||
// functions exported only by ordinal, a unique number asigned by the linker,
|
||||
// functions exported only by ordinal, a unique number assigned by the linker,
|
||||
// and linkers might add an unknown number of their own ordinal-only functions.
|
||||
if wantAll {
|
||||
if e.NumberOfNames <= uint32(exportedSymbols) {
|
||||
|
|
|
|||
|
|
@ -3153,8 +3153,8 @@ func getDependencyScore(scores []uint, v *Value) (score uint) {
|
|||
}
|
||||
|
||||
// topoSortValuesInBlock ensure ranging over b.Values visit values before they are being used.
|
||||
// It does not consider dependencies with other blocks; thus Phi nodes are considered to not have any dependecies.
|
||||
// The result is always determistic and does not depend on the previous slice ordering.
|
||||
// It does not consider dependencies with other blocks; thus Phi nodes are considered to not have any dependencies.
|
||||
// The result is always deterministic and does not depend on the previous slice ordering.
|
||||
func (ft *factsTable) topoSortValuesInBlock(b *Block) {
|
||||
f := b.Func
|
||||
want := f.NumValues()
|
||||
|
|
|
|||
|
|
@ -2535,7 +2535,7 @@ func (p *Package) setBuildInfo(ctx context.Context, f *modfetch.Fetcher, autoVCS
|
|||
}
|
||||
if cfg.BuildBuildvcs == "auto" && vcsCmd != nil && vcsCmd.Cmd != "" {
|
||||
if _, err := pathcache.LookPath(vcsCmd.Cmd); err != nil {
|
||||
// We fould a repository, but the required VCS tool is not present.
|
||||
// We found a repository, but the required VCS tool is not present.
|
||||
// "-buildvcs=auto" means that we should silently drop the VCS metadata.
|
||||
goto omitVCS
|
||||
}
|
||||
|
|
|
|||
|
|
@ -381,7 +381,7 @@ Note: In the following sections 3.1 to 3.6, "ui4" (4-bit unsigned int immediate)
|
|||
Go assembly | platform assembly
|
||||
MOVWP 8(R4), R5 | ldptr.w r5, r4, $2
|
||||
|
||||
6. Note of special add instrction
|
||||
6. Note of special add instruction
|
||||
Mapping between Go and platform assembly:
|
||||
Go assembly | platform assembly
|
||||
ADDV16 si16<<16, Rj, Rd | addu16i.d rd, rj, si16
|
||||
|
|
|
|||
|
|
@ -517,7 +517,7 @@ func FuncCountToDwTxtAddrFlavor(fncount int) (RelocType, int) {
|
|||
//
|
||||
// Background/motivation: let's say we have a package P with some
|
||||
// assembly functions (in "a.s") and some Go functions (in
|
||||
// "b.go"). The compilation sequence used by the Go commmand will be:
|
||||
// "b.go"). The compilation sequence used by the Go command will be:
|
||||
//
|
||||
// 1. run the assembler on a.s to generate a "symabis" file
|
||||
// 2. run the compiler on b.go passing it the symabis file and generating a "go_defs.h" asm header
|
||||
|
|
|
|||
|
|
@ -1682,7 +1682,7 @@ func (t test) wantedAsmOpcodes(fn string) asmChecks {
|
|||
// There was an asm spec in this comment. Check for possible syntax
|
||||
// errors, which would leave some asm patterns unused. We want
|
||||
// to allow some tail, for example for English comments. The
|
||||
// hueristic we use here is we look for two consecutive capital
|
||||
// heuristic we use here is we look for two consecutive capital
|
||||
// letters (or a wasm prefix). Those are probably assembly mnemonics
|
||||
// that weren't used.
|
||||
tail := comment[lastUsed:]
|
||||
|
|
|
|||
|
|
@ -1120,7 +1120,7 @@ func expandFile(fname string) string {
|
|||
// are emitted to the directory table first, then the file table is
|
||||
// emitted after that.
|
||||
//
|
||||
// Note that there are some differences betwen DWARF versions 4 and 5
|
||||
// Note that there are some differences between DWARF versions 4 and 5
|
||||
// regarding how files and directories are handled; the chief item is
|
||||
// that in version 4 we have an implicit directory index 0 that holds
|
||||
// the compilation dir, and an implicit file index 0 that holds the
|
||||
|
|
|
|||
|
|
@ -279,7 +279,7 @@ func TestSizes(t *testing.T) {
|
|||
|
||||
// External linking may bring in C symbols with unknown size. Skip.
|
||||
//
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
@ -852,7 +852,7 @@ func TestAbstractOriginSanityIssue26237(t *testing.T) {
|
|||
|
||||
func TestRuntimeTypeAttrInternal(t *testing.T) {
|
||||
testenv.MustHaveGoBuild(t)
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
@ -1490,7 +1490,7 @@ func TestIssue42484(t *testing.T) {
|
|||
testenv.MustHaveGoBuild(t)
|
||||
// Avoid spurious failures from external linkers.
|
||||
//
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ func TestUndefinedRelocErrors(t *testing.T) {
|
|||
// When external linking, symbols may be defined externally, so we allow
|
||||
// undefined symbols and let external linker resolve. Skip the test.
|
||||
//
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@ func TestIssue21703(t *testing.T) {
|
|||
t.Parallel()
|
||||
|
||||
testenv.MustHaveGoBuild(t)
|
||||
// N.B. the build below explictly doesn't pass through
|
||||
// N.B. the build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
@ -175,7 +175,7 @@ func TestIssue28429(t *testing.T) {
|
|||
t.Parallel()
|
||||
|
||||
testenv.MustHaveGoBuild(t)
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
@ -280,7 +280,7 @@ main.x: relocation target main.zero not defined
|
|||
func TestIssue33979(t *testing.T) {
|
||||
testenv.MustHaveGoBuild(t)
|
||||
testenv.MustHaveCGO(t)
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.SpecialBuildTypes{Cgo: true})
|
||||
|
||||
|
|
@ -1047,7 +1047,7 @@ func TestIndexMismatch(t *testing.T) {
|
|||
// This shouldn't happen with "go build". We invoke the compiler and the linker
|
||||
// manually, and try to "trick" the linker with an inconsistent object file.
|
||||
testenv.MustHaveGoBuild(t)
|
||||
// N.B. the build below explictly doesn't pass through
|
||||
// N.B. the build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import (
|
|||
|
||||
func TestInternalLinkerCgoExec(t *testing.T) {
|
||||
testenv.MustHaveCGO(t)
|
||||
// N.B. the go build explictly doesn't pass through
|
||||
// N.B. the go build explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.SpecialBuildTypes{Cgo: true})
|
||||
testGoExec(t, true, false)
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ func TestExtract(t *testing.T) {
|
|||
// Test that pack-created archives can be understood by the tools.
|
||||
func TestHello(t *testing.T) {
|
||||
testenv.MustHaveGoBuild(t)
|
||||
// N.B. the build below explictly doesn't pass through
|
||||
// N.B. the build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
|
|||
|
|
@ -429,7 +429,7 @@ func (d *compressor) tryBetterMatchAtEnd(prevLength, prevOffset, lookahead int32
|
|||
return prevLength, prevOffset
|
||||
}
|
||||
|
||||
// skipLiterals emits extra literal bytes during long runs of uncompressible data,
|
||||
// skipLiterals emits extra literal bytes during long runs of incompressible data,
|
||||
// skipping ahead to avoid futile match searches. Returns false on write error.
|
||||
func (d *compressor) skipLiterals() bool {
|
||||
s := d.state
|
||||
|
|
|
|||
|
|
@ -118,7 +118,7 @@ func makeTestingCiphers(aesBlock cipher.Block, iv []byte) (genericCtr, multibloc
|
|||
return cipher.NewCTR(wrap(aesBlock), iv), cipher.NewCTR(aesBlock, iv)
|
||||
}
|
||||
|
||||
// TestCTR_AES_blocks8FastPathMatchesGeneric ensures the overlow aware branch
|
||||
// TestCTR_AES_blocks8FastPathMatchesGeneric ensures the overflow aware branch
|
||||
// produces identical keystreams to the generic counter walker across
|
||||
// representative IVs, including near-overflow cases.
|
||||
func TestCTR_AES_blocks8FastPathMatchesGeneric(t *testing.T) {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ func ConstantTimeCompare(x, y []byte) int {
|
|||
}
|
||||
|
||||
// ConstantTimeLessOrEqBytes returns 1 if x <= y and 0 otherwise. The comparison
|
||||
// is lexigraphical, or big-endian. The time taken is a function of the length of
|
||||
// is lexicographical, or big-endian. The time taken is a function of the length of
|
||||
// the slices and is independent of the contents. If the lengths of x and y do not
|
||||
// match it returns 0 immediately.
|
||||
func ConstantTimeLessOrEqBytes(x, y []byte) int {
|
||||
|
|
|
|||
|
|
@ -720,7 +720,7 @@ func cmdCShakeMct(hFn func(N, S []byte) *sha3.SHAKE) command {
|
|||
rightmostOutput := digest[outputLenBytes-2:]
|
||||
// IMPORTANT: the specification says:
|
||||
// NOTE: For the "Rightmost_Output_bits % Range" operation, the Rightmost_Output_bits bit string
|
||||
// should be interpretted as a little endian-encoded number.
|
||||
// should be interpreted as a little endian-encoded number.
|
||||
// This is **a lie**! It has to be interpreted as a big-endian number.
|
||||
rightmostOutputBE := binary.BigEndian.Uint16(rightmostOutput)
|
||||
|
||||
|
|
@ -1799,7 +1799,7 @@ func cmdKdfCounterAft() command {
|
|||
}
|
||||
// The spec doesn't describe the "deferred" property for a KDF counterMode test case.
|
||||
// BoringSSL's acvptool sends an empty key when deferred=true, but with the capabilities
|
||||
// we register all test cases ahve deferred=false and provide a key from the populated
|
||||
// we register all test cases have deferred=false and provide a key from the populated
|
||||
// keyIn property.
|
||||
if len(key) == 0 {
|
||||
return nil, errors.New("deferred test cases are not supported")
|
||||
|
|
|
|||
|
|
@ -2588,7 +2588,7 @@ func TestDowngradeCanary(t *testing.T) {
|
|||
t.Errorf("client unexpectedly reacted to a canary in TLS 1.0")
|
||||
}
|
||||
} else {
|
||||
t.Logf("skiping TLS 1.1 and TLS 1.0 downgrade canary checks in FIPS mode")
|
||||
t.Logf("skipping TLS 1.1 and TLS 1.0 downgrade canary checks in FIPS mode")
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2407,10 +2407,10 @@ func TestECH(t *testing.T) {
|
|||
t.Fatalf("unexpected ConnectionState.ServerName, want %q, got server:%q, client: %q", "secret.example", ss.ServerName, cs.ServerName)
|
||||
}
|
||||
if len(cs.VerifiedChains) != 1 {
|
||||
t.Fatal("unexpect number of certificate chains")
|
||||
t.Fatal("unexpected number of certificate chains")
|
||||
}
|
||||
if len(cs.VerifiedChains[0]) != 1 {
|
||||
t.Fatal("unexpect number of certificates")
|
||||
t.Fatal("unexpected number of certificates")
|
||||
}
|
||||
if !cs.VerifiedChains[0][0].Equal(secretCert) {
|
||||
t.Fatal("unexpected certificate")
|
||||
|
|
|
|||
|
|
@ -695,7 +695,7 @@ func alreadyInChain(candidate *Certificate, chain []*Certificate) bool {
|
|||
continue
|
||||
}
|
||||
// We enforce the canonical encoding of SPKI (by only allowing the
|
||||
// correct AI paremeter encodings in parseCertificate), so it's safe to
|
||||
// correct AI parameter encodings in parseCertificate), so it's safe to
|
||||
// directly compare the raw bytes.
|
||||
if !bytes.Equal(candidate.RawSubjectPublicKeyInfo, cert.RawSubjectPublicKeyInfo) {
|
||||
continue
|
||||
|
|
|
|||
|
|
@ -399,7 +399,7 @@ func (cc http1ClientConn) RoundTrip(req *Request) (*Response, error) {
|
|||
ctx := req.Context()
|
||||
trace := httptrace.ContextClientTrace(ctx)
|
||||
|
||||
// Convert Request.Cancel into context cancelation.
|
||||
// Convert Request.Cancel into context cancellation.
|
||||
ctx, cancel := context.WithCancelCause(req.Context())
|
||||
if req.Cancel != nil {
|
||||
go awaitLegacyCancel(ctx, cancel, req)
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ import (
|
|||
// - HTTP1 is the HTTP/1.0 and HTTP/1.1 protocols.
|
||||
// HTTP1 is supported on both unsecured TCP and secured TLS connections.
|
||||
//
|
||||
// - HTTP2 is the HTTP/2 protcol over a TLS connection.
|
||||
// - HTTP2 is the HTTP/2 protocol over a TLS connection.
|
||||
//
|
||||
// - UnencryptedHTTP2 is the HTTP/2 protocol over an unsecured TCP connection.
|
||||
type Protocols struct {
|
||||
|
|
@ -123,7 +123,7 @@ type contextKey struct {
|
|||
|
||||
func (k *contextKey) String() string { return "net/http context value " + k.name }
|
||||
|
||||
// removePort strips the port while correclty handling IPv6.
|
||||
// removePort strips the port while correctly handling IPv6.
|
||||
func removePort(host string) string {
|
||||
for i := len(host) - 1; i >= 0; i-- {
|
||||
switch host[i] {
|
||||
|
|
|
|||
|
|
@ -383,7 +383,7 @@ func (h *fakeNetConnHalf) writePartial(b []byte) (n int, err error) {
|
|||
return h.buf.Write(b)
|
||||
}
|
||||
|
||||
// deadlineContext converts a changable deadline (as in net.Conn.SetDeadline) into a Context.
|
||||
// deadlineContext converts a changeable deadline (as in net.Conn.SetDeadline) into a Context.
|
||||
type deadlineContext struct {
|
||||
mu sync.Mutex
|
||||
ctx context.Context
|
||||
|
|
|
|||
|
|
@ -3800,7 +3800,7 @@ func ListenAndServeTLS(addr, certFile, keyFile string, handler Handler) error {
|
|||
// via net/http. See https://go.dev/issue/77440 for details.
|
||||
//
|
||||
// This is currently only used with golang.org/x/net/internal/http3, to allow
|
||||
// us to test our HTTP/3 implementation againts tests in net/http. HTTP/3 is
|
||||
// us to test our HTTP/3 implementation against tests in net/http. HTTP/3 is
|
||||
// not yet accessible to end-users.
|
||||
type http3ServerHandler struct {
|
||||
handler serverHandler
|
||||
|
|
|
|||
|
|
@ -671,12 +671,12 @@ func (t *Transport) roundTrip(req *Request) (_ *Response, err error) {
|
|||
// RoundTripper returns.
|
||||
ctx, cancel := context.WithCancelCause(req.Context())
|
||||
|
||||
// Convert Request.Cancel into context cancelation.
|
||||
// Convert Request.Cancel into context cancellation.
|
||||
if origReq.Cancel != nil {
|
||||
go awaitLegacyCancel(ctx, cancel, origReq)
|
||||
}
|
||||
|
||||
// Convert Transport.CancelRequest into context cancelation.
|
||||
// Convert Transport.CancelRequest into context cancellation.
|
||||
//
|
||||
// This is lamentably expensive. CancelRequest has been deprecated for a long time
|
||||
// and doesn't work on HTTP/2 requests. Perhaps we should drop support for it entirely.
|
||||
|
|
@ -983,7 +983,7 @@ func (t *Transport) CloseIdleConnections() {
|
|||
}
|
||||
}
|
||||
|
||||
// prepareTransportCancel sets up state to convert Transport.CancelRequest into context cancelation.
|
||||
// prepareTransportCancel sets up state to convert Transport.CancelRequest into context cancellation.
|
||||
func (t *Transport) prepareTransportCancel(req *Request, origCancel context.CancelCauseFunc) context.CancelCauseFunc {
|
||||
// Historically, RoundTrip has not modified the Request in any way.
|
||||
// We could avoid the need to keep a map of all in-flight requests by adding
|
||||
|
|
|
|||
|
|
@ -684,7 +684,7 @@ func TestExtraFiles(t *testing.T) {
|
|||
// This test runs with cgo disabled. External linking needs cgo, so
|
||||
// it doesn't work if external linking is required.
|
||||
//
|
||||
// N.B. go build below explictly doesn't pass through
|
||||
// N.B. go build below explicitly doesn't pass through
|
||||
// -asan/-msan/-race, so we don't care about those.
|
||||
testenv.MustInternalLink(t, testenv.NoSpecialBuildTypes)
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ func mustHaveFourCPUs(t *testing.T) {
|
|||
// NumCPU.
|
||||
//
|
||||
// cgroup GOMAXPROCS also have a minimum of 2. We need some room above
|
||||
// that to test interesting properies.
|
||||
// that to test interesting properties.
|
||||
if runtime.NumCPU() < 4 {
|
||||
t.Helper()
|
||||
t.Skip("skipping test: fewer than 4 CPUs")
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
// optimize the scan loop by size class (not yet completed) all the way to the
|
||||
// point of applying SIMD techniques to really tear through the heap.
|
||||
//
|
||||
// Naturally, this depends on being able to create opportunties to batch objects
|
||||
// Naturally, this depends on being able to create opportunities to batch objects
|
||||
// together. The basic idea here is to have two sets of mark bits. One set is the
|
||||
// regular set of mark bits ("marks"), while the other essentially says that the
|
||||
// objects have been scanned already ("scans"). When we see a pointer for the first
|
||||
|
|
|
|||
|
|
@ -1135,7 +1135,7 @@ func (s *scavengeIndex) alloc(ci chunkIdx, npages uint) {
|
|||
// TODO(mknyszek): Consider eagerly backing memory with huge pages
|
||||
// here and track whether we believe this chunk is backed by huge pages.
|
||||
// In the past we've attempted to use sysHugePageCollapse (which uses
|
||||
// MADV_COLLAPSE on Linux, and is unsupported elswhere) for this purpose,
|
||||
// MADV_COLLAPSE on Linux, and is unsupported elsewhere) for this purpose,
|
||||
// but that caused performance issues in production environments.
|
||||
s.chunks[ci].store(sc)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -785,7 +785,7 @@ type p struct {
|
|||
|
||||
// oldm is the previous m this p ran on.
|
||||
//
|
||||
// We are not assosciated with this m, so we have no control over its
|
||||
// We are not associated with this m, so we have no control over its
|
||||
// lifecycle. This value is an m.self object which points to the m
|
||||
// until the m exits.
|
||||
//
|
||||
|
|
|
|||
|
|
@ -353,7 +353,7 @@ func (op *Operation) adjustAsm() {
|
|||
// does not return a vector, i.e., that returns a result in a general
|
||||
// register. Currently there's only one family of Ops in Go's simd library
|
||||
// that does this (GetElem), and so this is specialized to work for that,
|
||||
// but the problem (mismatch betwen hardware register width and Go type
|
||||
// but the problem (mismatch between hardware register width and Go type
|
||||
// width) seems likely to recur if there are any other cases.
|
||||
func (op Operation) goNormalType() string {
|
||||
if op.Go == "GetElem" {
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ func main() {
|
|||
defer func() {
|
||||
v = &Impl{}
|
||||
}()
|
||||
v. // A() is on a sepearate line
|
||||
v. // A() is on a separate line
|
||||
A()
|
||||
})
|
||||
shouldNilPanic(64, func() {
|
||||
|
|
@ -60,7 +60,7 @@ func main() {
|
|||
v = &Impl{}
|
||||
v = &Impl2{} // assign different type, such that the call below does not get devirtualized
|
||||
}()
|
||||
v. // A() is on a sepearate line
|
||||
v. // A() is on a separate line
|
||||
A()
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
// FIXME(@Jorropo): this file exists because I havn't yet bothered to
|
||||
// FIXME(@Jorropo): this file exists because I haven't yet bothered to
|
||||
// make prove work on the pure go function call fallback.
|
||||
// My idea was to wait until CL 637936 is merged, then we can always emit
|
||||
// the PopCount SSA operation and translate them to pure function calls
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue