...
Run Format

Source file test/fixedbugs/gcc65755.go

Documentation: test/fixedbugs

  // run
  
  // Copyright 2015 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.
  
  // PR65755: Incorrect type descriptor for type defined within method.
  
  package main
  
  import "reflect"
  
  type S1 struct{}
  
  func (S1) Fix() string {
  	type s struct {
  		f int
  	}
  	return reflect.TypeOf(s{}).Field(0).Name
  }
  
  type S2 struct{}
  
  func (S2) Fix() string {
  	type s struct {
  		g bool
  	}
  	return reflect.TypeOf(s{}).Field(0).Name
  }
  
  func main() {
  	f1 := S1{}.Fix()
  	f2 := S2{}.Fix()
  	if f1 != "f" || f2 != "g" {
  		panic(f1 + f2)
  	}
  }
  

View as plain text