12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- //gofmt -r=(x)->x
- // Copyright 2012 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
- // Rewriting of parenthesized expressions (x) -> x
- // must not drop parentheses if that would lead to
- // wrong association of the operands.
- // Was issue 1847.
- package main
- // From example 1 of issue 1847.
- func _() {
- var t = (&T{1000}).Id()
- }
- // From example 2 of issue 1847.
- func _() {
- fmt.Println((*xpp).a)
- }
- // Some more test cases.
- func _() {
- _ = (-x).f
- _ = (*x).f
- _ = (&x).f
- _ = (!x).f
- _ = (-x.f)
- _ = (*x.f)
- _ = (&x.f)
- _ = (!x.f)
- (-x).f()
- (*x).f()
- (&x).f()
- (!x).f()
- _ = (-x.f())
- _ = (*x.f())
- _ = (&x.f())
- _ = (!x.f())
- _ = ((-x)).f
- _ = ((*x)).f
- _ = ((&x)).f
- _ = ((!x)).f
- _ = ((-x.f))
- _ = ((*x.f))
- _ = ((&x.f))
- _ = ((!x.f))
- ((-x)).f()
- ((*x)).f()
- ((&x)).f()
- ((!x)).f()
- _ = ((-x.f()))
- _ = ((*x.f()))
- _ = ((&x.f()))
- _ = ((!x.f()))
- _ = -(x).f
- _ = *(x).f
- _ = &(x).f
- _ = !(x).f
- _ = -x.f
- _ = *x.f
- _ = &x.f
- _ = !x.f
- _ = -(x).f()
- _ = *(x).f()
- _ = &(x).f()
- _ = !(x).f()
- _ = -x.f()
- _ = *x.f()
- _ = &x.f()
- _ = !x.f()
- }
|