sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: pytorch
Issue: Consolidate definition of operators/gradients where possible
Labels: module: internals,triaged,better-engineering

In working on #21088, there were cases where code changes needed to be made that were repetitive and could be error-prone. We could probably simplify/merge some of this code.

To modify an operator we need to update:

* Tensor.h, TensorMethods.h, and Type.h for C++ interfaces.
* native_functions.yaml for the primary interface definition used by codegen.
* aten/src/ATen/native/*Ops.cpp for the C++ operator implementation
* external changes for xla/msnpu extensions
* derivatives.yaml to define the c++ gradient
* shape_analysis.cpp to define the dtype/shape returned for the operator in the jit graph.
* symbolic_script.cpp to update the torch script definition of the operator and gradient
* symbolic_variable.h to update the jit graph for the operator
* symbolic_opset9.py to update the specification of the operator in onnx.

## Motivation

This isn't a such concern for compile-checked interface definitions like TensorMethods.h vs Tensor.h. Larger concerns are, for example:

* We have gradient implementations in both torchscript (symbolic_script.cpp) and c++ (in derivatives.yaml). It's possible for one to be inconsistent, and harder to test.
* Shape analysis determines dtypes of returned tensors using its own separate logic in parallel to the operator implementation. Changes made necessary by my modification of an operator were not caught by tests, and dtypes retuned were already incorrect for some operators. A single path to determining the correct shape/dtype would make this more robust.
* It could be faster/easier to contribute changes if developers working on one part of the code don't necessarily need to be familiar with all of the code. Updating an onnx opset is somewhat challenging for someone unfamiliar with onnx.

## Pitch

* Gradients: Investigate if it's possible to generate the C++ gradient from torchscript or vice versa.
* Shapes analysis: Find some alternate way to determine dtype/shape returned. tracing?
* SymbolicVariable: This mostly seems derived from the operator interface definition. I'm not sure if codegen would make sense here.
* Interfaces: consider merging native_functions.yaml and derivatives.yaml to reduce repetition.
* Onnx: ???

## Alternatives

I don't know the best way to address these concerns, but I believe we could investigate and make some improvements to what we have. Some of this work (shape analysis?) may already be in progress.


cc @ezyang @bhosmer @smessmer @ljk53 @bdhirsh @ailzhang
Repository: TypeScript
Issue: Babel-generated module with exports["default"] not importable
Labels: Bug

<!-- 🚨 STOP 🚨 𝗦𝗧𝗢𝗣 🚨 𝑺𝑻𝑶𝑷 🚨

Half of all issues filed here are duplicates, answered in the FAQ, or not appropriate for the bug tracker. Even if you think you've found a *bug*, please read the FAQ first, especially the Common "Bugs" That Aren't Bugs section!

Please help us by doing the following steps before logging an issue:
  * Search: https://github.com/Microsoft/TypeScript/search?type=Issues
  * Read the FAQ: https://github.com/Microsoft/TypeScript/wiki/FAQ

Please fill in the *entire* template below.
-->

<!-- Please try to reproduce the issue with `typescript@next`. It may have already been fixed. -->
**TypeScript Version:**  3.6.0-dev.20190620

<!-- Search terms you tried before logging this (so others can find this issue more easily) -->
**Search Terms:** default, exports, interop, babel

**Code**

```ts
// TS code
import Something from 'some-module';
```

```js
// node_modules/some-module/index.js, produced by `@babel/preset-env` defaults

"use strict";
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports["default"] = void 0;

// Bunch of injected interop/polyfill stuff

function TheMainExport() {
}

exports["default"] = TheMainExport;
```

**Expected behavior:**

TypeScript should be able to import the default export

**Actual behavior:**

This error occurs:

> Module '...node_modules/some-module/index.js' has no default export.

**More details:**

When the problem module is built with these `@babel/preset-env` options:

```
{
  "targets": {
    "esmodules": true
  }
}
```

...then the emitted JavaScript uses the syntax `exports.default` instead of `exports["default"]`. Just manually changing the original JS to use the dot syntax allows TypeScript to see the module. For some reason, the bracket notation is not treated the same way.

Since TS importing from modules generated by babel is a common scenario, perhaps it ought to treat `exports["default"]` the same as `exports.default`.

Compiler flags used:

```
--allowJs 
--allowSyntheticDefaultImports 
--jsx preserve 
--lib dom,es2017 
--module esnext 
--moduleResolution node 
--noEmit 
--noUnusedLocals 
--noUnusedParameters 
--preserveConstEnums 
--sourceMap 
--strict 
--target esnext 
--maxNodeModuleJsDepth 1
```
Repository: scrcpy
Issue: Cursor and keyboard - DeskDock features
Labels: feature request

A feature I enjoy from DeskDock (no longer supported) is showing the mouse on the phone screen. The keyboard for DeskDock also works great and allows shortcuts to work (such as CTRL + left/right/backspace.)

Thank you!
Repository: TypeScript
Issue: Add a flag for disabling all extensions
Labels: Suggestion,In Discussion,API,Domain: TSServer

Sometimes, server extensions cause server crashes.  After a limited number of restarts/retries in the default state, it might make sense for the editor to make a final attempt with a no-extensions flag.
Repository: pytorch
Issue: SigAbort while running the Caffe2 unit test - thread_init_test - built on Clang7 +glibc 2.23
Labels: caffe2

## 🐛 Bug
SigAbort while running the Caffe2 unit test - thread_init_test - built on Clang7 +glibc 2.23

## To Reproduce
Run the Caffe2 unit tests
.jenkins/caffe2/test.sh 

## Execution dump
[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (1 ms total)
[  PASSED  ] 1 test.
+ for test in '$(find "$cpp_test_dir" -executable -type f)'
+ case "$test" in
++ basename /root/.local/lib/python2.7/site-packages/torch/test/thread_init_test
+ LD_LIBRARY_PATH=/root/.local/lib/python2.7/site-packages/torch/lib
+ /root/.local/lib/python2.7/site-packages/torch/test/thread_init_test --gtest_output=xml:/root/caffe2/caffe2_tests/cpp/thread_init_test.xml

terminate called after throwing an instance of 'c10::Error'

  what():  (at::get_num_threads()) == (given_num_threads) INTERNAL ASSERT FAILED at /root/caffe2/aten/src/ATen/test/thread_init_test.cpp:15, please report a bug to PyTorch.  (test at /root/caffe2/aten/src/ATen/test/thread_init_test.cpp:15)

frame #0: c10::Error::Error(c10::SourceLocation, std::string const&) + 0x47 (0x7f01ad6d7cd7 in /root/.local/lib/python2.7/site-packages/torch/lib/libc10.so)

frame #1: test(int) + 0x43e (0x4032ee in /root/.local/lib/python2.7/site-packages/torch/test/thread_init_test)
frame #2: main + 0xec (0x40365c in /root/.local/lib/python2.7/site-packages/torch/test/thread_init_test)
frame #3: __libc_start_main + 0xea (0x7f019ec0b71a in /lib64/libc.so.6)
frame #4: _start + 0x29 (0x402df9 in /root/.local/lib/python2.7/site-packages/torch/test/thread_init_test)

.jenkins/caffe2/test.sh: line 31:  7888 Aborted                 (core dumped) LD_LIBRARY_PATH="$ld_library_path" "$test" --gtest_output=xml:"$gtest_reports_dir/$(basename $test).xml"

## Expected behavior
No abort

## Environment
 - PyTorch Version (e.g., 1.0): latest upstream code
 - OS (e.g., Linux): Ubuntu 18.04
 - How you installed PyTorch (`conda`, `pip`, source): source
 - Build command you used (if compiling from source): .jenkins/caffe2/build.sh
 - Python version: python 2.7
 - CUDA/cuDNN version: - 
 - GPU models and configuration: ROCm 2.4
 - Any other relevant information:

## Additional context
Problem seen only in the environment - Clang 7 + glibc 2.23
Repository: flutter
Issue: `flutter run` should pause and retry on iOS device lock
Labels: platform-ios,tool,customer: crowd,t: xcode,P3,team-ios,triaged-ios

Customer request from Q2 survey:

>Please make `flutter run` wait if the iOS device is locked, instead of exiting. Because Flutter exits, you have to rebuild everything again.
Repository: pytorch
Issue: Cannot update part of the parameters in DistributedDataParallel.
Labels: oncall: distributed,triaged

## 🐛 Bug

When I use multiple GPU while the loss is calculated by only part of the parameters. I get the following errors. Use only one GPU works well.




## To Reproduce

Steps to reproduce the behavior:

Define a network in which the loss only depends on part of the parameters. We get:

```
RuntimeError: Expected to have finished reduction in the prior iteration before starting a
 new one. This error indicates that your module has parameters that were not used in produ
cing loss. You can enable unused parameter detection by (1) passing the keyword argument `
find_unused_parameters=True` to `torch.nn.parallel.DistributedDataParallel`; (2) making su
re all `forward` function outputs participate in calculating loss. If you already have done
the above two steps, then the distributed data parallel module wasn't able to locate the
 output tensors in the return value of your module's `forward` function. Please include th
e loss function and the structure of the return value of `forward` of your module when rep
orting this issue (e.g. list, dict, iterable). (prepare_for_backward at /pytorch/torch/csrc/distributed/c10d/reducer.cpp:429)
```

## Expected behavior

<!-- A clear and concise description of what you expected to happen. -->

## Environment

PyTorch version: 1.2.0.dev20190620
CUDA used to build PyTorch: 9.0.176
OS: CentOS Linux release 7.5.1804 (Core)
GCC version: (crosstool-NG 1.23.0.449-a04d0) 7.3.0
CMake version: version 2.8.12.2

Python version: 3.6
Is CUDA available: Yes
CUDA runtime version: Could not collect
GPU models and configuration:
GPU 0: GeForce GTX 1080
GPU 1: GeForce GTX 1080
GPU 2: GeForce GTX 1080
GPU 3: GeForce GTX 1080

Nvidia driver version: 396.26
cuDNN version: Could not collect

Versions of relevant libraries:
[pip3] msgpack-numpy==0.4.3.2
[pip3] numpy==1.15.4
[pip3] pytorch-pretrained-bert==0.4.0
[pip3] torch==1.0.1.post2
[pip3] torchfile==0.1.0
[pip3] torchtext==0.4.0
[pip3] torchvision-nightly==0.2.1
[conda] pytorch-pretrained-bert   0.6.2                    pypi_0    pypi
[conda] torch-nightly             1.2.0.dev20190620          pypi_0    pypi
[conda] torchfile                 0.1.0                    pypi_0    pypi
[conda] torchtext                 0.4.0                    pypi_0    pypi
Repository: go
Issue: cmd/go: test coverage output twice
Labels: help wanted,NeedsInvestigation

<!-- Please answer these questions before submitting your issue. Thanks! -->

### What version of Go are you using (`go version`)?

<pre>
$ go version
go version go1.12.6 linux/amd64
</pre>

### What did you do?

```
$ go test -json -cover ./...
```

### What did you expect to see?

Coverage statements output only once, or one of the events identified differently from the other.

```
{"Time":"2019-06-20T18:51:29.178821431-04:00","Action":"output","Package":"gotest.tools/assert/cmp","Output":"ok  \tgotest.tools/assert/cmp\t(cached)\tcoverage: 91.1% of statements\n"}
{"Time":"2019-06-20T18:51:29.183457861-04:00","Action":"output","Package":"gotest.tools/assert","Output":"ok  \tgotest.tools/assert\t(cached)\tcoverage: 85.2% of statements\n"}
```


### What did you see instead?

Coverage statements output twice.
```
{"Time":"2019-06-20T18:51:29.178811583-04:00","Action":"output","Package":"gotest.tools/assert/cmp","Output":"coverage: 91.1% of statements\n"}
{"Time":"2019-06-20T18:51:29.178821431-04:00","Action":"output","Package":"gotest.tools/assert/cmp","Output":"ok  \tgotest.tools/assert/cmp\t(cached)\tcoverage: 91.1% of statements\n"}
{"Time":"2019-06-20T18:51:29.183452652-04:00","Action":"output","Package":"gotest.tools/assert","Output":"coverage: 85.2% of statements\n"}
{"Time":"2019-06-20T18:51:29.183457861-04:00","Action":"output","Package":"gotest.tools/assert","Output":"ok  \tgotest.tools/assert\t(cached)\tcoverage: 85.2% of statements\n"}
```

Related to #23036, if one of the events could be identified differently the duplicate output would be easy to filter out.

I noticed that `go test -v` has the same behaviour, but i'm not sure why.
Repository: rust
Issue: if/while Some(n) = &mut foo sugar will leak a temporary mutable borrow to current scope in particular situation
Labels: A-lifetimes,A-borrow-checker,T-compiler,C-bug

[Same Code in the Playground](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=b8592ca63a5f3b37a838cf65f3e665be)
```rust 
pub struct Demo {
    foo: Option<Box<Demo>>,
}

// Compiles
pub fn foo1(mut a: &mut Demo) {
    if let Some(ref mut b) = a.foo {
        a = b;
    }
    a.foo = None;
}

// Does not compile
pub fn foo2(mut a: &mut Demo) {
    if let Some(b) = &mut a.foo {
        a = b;
    }
    a.foo = None;
}

// Same Error with foo2
pub fn foo3(mut a: &mut Demo) {
    if let Some(ref mut b) = &mut a.foo {
        a = b;
    }
    a.foo = None;
}
```

What is exactly difference between foo1 and foo2

>ADD: I think foo1 will desuger something like this:
```rust
pub fn foo1_desugered(mut a: &mut Demo) {
    match a.foo {
        Some(ref mut _1) => a = _1 ,
        None => ()
    }
    a.foo = None;
}
```
and foo2 will be like: 
```rust
pub fn foo2_desugered(mut a: &mut Demo) {
    let mut _t1 = &mut a.foo;
    match _t1 {
        Some(_1) => a = _1 ,
        None => ()
    }
    a.foo = None;
}
```
>ADD#2 And if I explicit add a scope: 
```rust
// Does not compile
pub fn foo2(mut a: &mut Demo) {
    {
        if let Some(b) = &mut a.foo {
            a = b;
        }
    }
    a.foo = None;
}

pub fn foo2_desugered(mut a: &mut Demo) {
    {
        let mut _t1 = &mut a.foo;
        match _t1 {
            Some(_1) => a = _1 ,
            None => ()
        }
    }
    a.foo = None;
}
```
same error :(
Repository: flutter
Issue: Add key for BottomNavigationBarItem
Labels: a: tests,framework,f: material design,P2,team-design,triaged-design

I have check this link:
https://github.com/flutter/flutter/blob/master/packages/flutter/test/material/bottom_navigation_bar_test.dart

It use `tester.tap` to drive one of BottomNavigationBarItem. but It is not very convenient if app support localization.
I think it add key can more flex to test.
Repository: rust
Issue: Output executable crashes with relocation-model=static
Labels: O-linux,T-compiler,C-bug

The following code crashes with "relocation-model=static" on linux x86-64, reproducible.


```
#![feature(nll)]

fn main() {
    fn divide(numerator: f64, denominator: f64) -> Option<f64> {
        if denominator == 0.0 {
            None
        } else {
            Some(numerator / denominator)
        }
    }
    let result = divide(2.0, 3.0);

    match result {
        Some(x) => println!("Result: {}", x),
        None => println!("Cannot Divide by 0"),
    }
}
```
Repository: go
Issue: proposal: cmd/go: allow 'go get -u' to upgrade the targets of replacements
Labels: Proposal,NeedsInvestigation,FeatureRequest,modules

<!-- Please answer these questions before submitting your issue. Thanks! -->

### What version of Go are you using (`go version`)?

<pre>
$ go version
go version go1.12.5 darwin/amd64
</pre>

### Does this issue reproduce with the latest release?
yes


### What operating system and processor architecture are you using (`go env`)?

<details><summary><code>go env</code> Output</summary><br><pre>
$ go env
go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/mj/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/mj/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/Cellar/go/1.12.5/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.12.5/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/xb/dsd0_2b92x7bsl92xlzj6fbm0000gn/T/go-build803671561=/tmp/go-build -gno-record-gcc-switches -fno-common"

</pre></details>

### What did you do?
go get -u github.com/dfang/auth


### What did you expect to see?

```
replace github.com/qor/auth => github.com/dfang/auth v0.0.0-20190621054412-96c274f7c597 
```
just update/replace the hash with updated one  in go.mod


### What did you see instead?

the hash didn't change, but add one dependency on 

```
require(
    ....
   github.com/dfang/auth v-0.0.0-<hash>
   .....
)
```

for now i have to copy hash in `require`, delete the line, update the hash in `replace`
Repository: electron
Issue: Improve `app.showAboutPanel()` on Linux
Labels: enhancement :sparkles:

<!--  As an open source project with a dedicated but small maintainer team, it can sometimes take a long time for issues to be addressed so please be patient and we will get back to you as soon as we can.
-->

### Preflight Checklist
<!-- Please ensure you've completed the following steps by replacing [ ] with [x]-->

* [x] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/master/CONTRIBUTING.md) for this project.
* [x] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md) that this project adheres to.
* [x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

### Problem Description

It's nice that `app.showAboutPanel()` works on Linux now, but how it works could be improved.

### Proposed Solution

#### 1. Add defaults

> On Linux, values must be set in order to be shown; there are no defaults.

This just makes it hard to use, since the macOS version has defaults. I don't see why you couldn't have the defaults and save people time. Electron already has the information:

- `applicationName`: Should default to `productName` in package.json.
- `applicationVersion`: Should default to `version` in package.json.
- `copyright`: Should default to `Copyright © 2019 Author Name`, where `Author Name` is the `author.name` field in package.json, if it exists.
- `website`: Should default to the `homepage` field in package.json, if it exists.
- `iconPath`: Should default to the app's icon.

#### 2. Add `credits` support for Linux

The setting is currently only available on macOS.

https://developer.gnome.org/gtk3/stable/GtkAboutDialog.html#gtk-about-dialog-set-authors
https://developer.gnome.org/gtk3/stable/GtkAboutDialog.html#gtk-about-dialog-add-credit-section

#### 3. Resize the icon to the correct size

The `iconPath` option should accept an image of any resize and resize it to the correct size.

This is what I'm currently seeing:

<img width="1218" alt="Screen Shot 2019-06-21 at 17 13 02" src="https://user-images.githubusercontent.com/170270/59917531-6554ea80-944c-11e9-8a91-32e1c368062d.png">


### Alternatives Considered

Not using the native dialog and make a custom one with HTML and CSS, but I would strongly prefer my apps to look and act as native as possible.

### Additional Information

Electron 5.0.5

---

// @codebytere
Repository: go
Issue: cmd/go: running `go generate` with go tool with different GOROOT fails
Labels: NeedsInvestigation,GoCommand

<!-- Please answer these questions before submitting your issue. Thanks! -->

### What version of Go are you using (`go version`)?

<pre>
$ go version
go version go1.12 linux/amd64
</pre>

### Does this issue reproduce with the latest release?

Yes

### What operating system and processor architecture are you using (`go env`)?

<details><summary><code>go env</code> Output</summary><br><pre>
$ go env
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/eliben/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/eliben/eli/go"
GOPROXY="https://proxy.golang.org"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/eliben/eli/golang-go/src/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build618171788=/tmp/go-build -gno-record-gcc-switches"
</pre></details>

### What did you do?

1. Created a fresh clone of the Go repository.
2. `$ cd src/cmd/compile/internal/gc`
3. Edit `syntax.go` to add a new AST node type `OFOOBAR`

```
$ grep -C 4 OFOOBAR syntax.go 
// Node ops.
const (
	OXXX Op = iota

	OFOOBAR

	// names
	ONAME    // var or func name
ONONAME // unnamed arg or return value: f(int, string) (int, error) { etc }
```
4. Ran `go generate`

```
$ go generate 
stringer: writing output: open class_string.go: permission denied
/usr/local/go/src/cmd/compile/internal/gc/go.go:43: running "stringer": exit status 1
```

Expected `op_string.go` to be updated with the new node type.

Also ran:

```
$ go generate syntax.go
```

No errors, but the generated `op_string.go` does not have the new node type.

### What did you expect to see?

Expected the new node type to appear in `op_string.go` after running `go generate`
Repository: go
Issue: cmd/go: go fmt fails in symlinked directory
Labels: NeedsInvestigation

<!-- Please answer these questions before submitting your issue. Thanks! -->

### What version of Go are you using (`go version`)?

<pre>
$ go version
go version go1.12 linux/amd64
</pre>

### Does this issue reproduce with the latest release?
If latest release is go 1.12 then yes

### What operating system and processor architecture are you using (`go env`)?

<details><summary><code>go env</code> Output</summary><br><pre>
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/rof/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/rof/"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build784063998=/tmp/go-build -gno-record-gcc-switches"
</pre></details>

### What did you do?

<!--
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
-->
I have one directory which is a clone of my git repo. Let's call it `project`.
I have a symbolic link to that directory. Let's call it `link`.

This works fine
```
$ cd src/github.com/.../project
$ go fmt
```

This does not work fine
```
$ cd link
$ go fmt
stat ../src/github.com/.../main.go: no such file or directory
exit status 2
```

### What did you expect to see?
I expected `go fmt` to work with no error.


### What did you see instead?
I saw a `no such file or directory` error, but the file exists.

### Additional information
```
$ strace go fmt |& grep \\.\\./src
waitid(P_PID, 10294, stat ../src/github.com/.../main.go: no such file or directory

$ strace go fmt |& grep \\.\\./src
futex(0xe474e8, FUTEX_WAIT_PRIVATE, 0, NULLstat ../src/github.com/.../main.go: no such file or directory
```

`go fmt` in the `link` directory fails 100% of the time.
50% of time, `futex` fails.
50% of time, `waitid` fails.

This runs in the docker environment of my cloud CI, Codeship. I am reporting the bug here since everything else works fine.

Thank you