code: func (link *LinkState) Complete() (string, error) {
  	var data unsafe.Pointer
  	var datasize C.size_t
  
  	err := result(C.cuLinkComplete(link.state, &data, &datasize))
  	if err != nil {
  		return "", err
  	}
  
  	size := int(datasize)
  	buffer := make([]byte, size)
  	copy(buffer, (*[20 << 30]byte)(data)[:size])
  
  	return string(buffer), nil
  }
docs: // Complete a pending linker invocation