title: How do I return a string from a function that is inside a for loop?
body: <p>I have a function I have written and I would like it to return a string. I have declared the variable before my for loop, but when I try and return it at the end of the function it claims the variable is unused. I do not seem to have the problem when returning other types. I am trying to figure out what I am doing wrong.</p>
  
  <pre class="lang-golang prettyprint-override"><code>func GetInstanceAlarms(instance *Instance) string {
      params := &amp;cloudwatch.DescribeAlarmsInput{}
      c := cloudwatch.New(session.New())
      resp, err := c.DescribeAlarms(params)
      var Arn string
      if err != nill {
          panic(err.Error())
      }
      for idx := range resp.MetricAlarms{
          for _, alarm := range resp.MetricAlarms[idx].Dimensions{
              if *alarm.Name == "InstanceId" &amp;&amp; *alarm.Value == instance.InstanceId{
                  log.Println(resp.MetricAlarms[idx].AlarmArn)
                  //claims this variable is unused
                  Arn := resp.MetricAlarms[idx].AlarmArn
              }
          }
      }
      return Arn
  }
  </code></pre>