| // 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. |
| |
| // This is a package for testing comment placement by go/printer. |
| package main |
| |
| // Test cases for idempotent comment formatting (was issue 1835). |
| /* |
| c1a |
| */ |
| /* |
| c1b |
| */ |
| /* foo |
| c1c |
| */ |
| /* foo |
| c1d |
| */ |
| /* |
| c1e |
| foo */ |
| /* |
| c1f |
| foo */ |
| |
| func f() { |
| /* |
| c2a |
| */ |
| /* |
| c2b |
| */ |
| /* foo |
| c2c |
| */ |
| /* foo |
| c2d |
| */ |
| /* |
| c2e |
| foo */ |
| /* |
| c2f |
| foo */ |
| } |
| |
| func g() { |
| /* |
| c3a |
| */ |
| /* |
| c3b |
| */ |
| /* foo |
| c3c |
| */ |
| /* foo |
| c3d |
| */ |
| /* |
| c3e |
| foo */ |
| /* |
| c3f |
| foo */ |
| } |
| |
| // Test case taken literally from issue 1835. |
| func main() { |
| /* |
| prints test 5 times |
| */ |
| for i := 0; i < 5; i++ { |
| println("test") |
| } |
| } |
| |
| func issue5623() { |
| L: |
| _ = yyyyyyyyyyyyyyyy // comment - should be aligned |
| _ = xxxxxxxxxxxxxxxxxxxxxxxxxxxx /* comment */ |
| |
| _ = yyyyyyyyyyyyyyyy /* comment - should be aligned */ |
| _ = xxxxxxxxxxxxxxxxxxxxxxxxxxxx // comment |
| |
| LLLLLLL: |
| _ = yyyyyyyyyyyyyyyy // comment - should be aligned |
| _ = xxxxxxxxxxxxxxxxxxxxxxxxxxxx // comment |
| |
| LL: |
| LLLLL: |
| _ = xxxxxxxxxxxxxxxxxxxxxxxxxxxx /* comment */ |
| _ = yyyyyyyyyyyyyyyy /* comment - should be aligned */ |
| |
| _ = xxxxxxxxxxxxxxxxxxxxxxxxxxxx // comment |
| _ = yyyyyyyyyyyyyyyy // comment - should be aligned |
| |
| // test case from issue |
| label: |
| mask := uint64(1)<<c - 1 // Allocation mask |
| used := atomic.LoadUint64(&h.used) // Current allocations |
| } |
| |
| // Test cases for issue 18782 |
| var _ = [][]int{ |
| /* a, b, c, d, e */ |
| /* a */ {0, 0, 0, 0, 0}, |
| /* b */ {0, 5, 4, 4, 4}, |
| /* c */ {0, 4, 5, 4, 4}, |
| /* d */ {0, 4, 4, 5, 4}, |
| /* e */ {0, 4, 4, 4, 5}, |
| } |
| |
| var _ = T{ /* a */ 0} |
| |
| var _ = T{ /* a */ /* b */ 0} |
| |
| var _ = T{ /* a */ /* b */ |
| /* c */ 0, |
| } |
| |
| var _ = T{ /* a */ /* b */ |
| /* c */ |
| /* d */ 0, |
| } |
| |
| var _ = T{ |
| /* a */ |
| /* b */ 0, |
| } |
| |
| var _ = T{ /* a */ {}} |
| |
| var _ = T{ /* a */ /* b */ {}} |
| |
| var _ = T{ /* a */ /* b */ |
| /* c */ {}, |
| } |
| |
| var _ = T{ /* a */ /* b */ |
| /* c */ |
| /* d */ {}, |
| } |
| |
| var _ = T{ |
| /* a */ |
| /* b */ {}, |
| } |
| |
| var _ = []T{ |
| func() { |
| var _ = [][]int{ |
| /* a, b, c, d, e */ |
| /* a */ {0, 0, 0, 0, 0}, |
| /* b */ {0, 5, 4, 4, 4}, |
| /* c */ {0, 4, 5, 4, 4}, |
| /* d */ {0, 4, 4, 5, 4}, |
| /* e */ {0, 4, 4, 4, 5}, |
| } |
| }, |
| } |