BoxCollider error with nothing wrong? C#

I keep getting this error message, but everything runs fine:

The variable `Reach’ is assigned but its value is never used

Am I doing something wrong? If so I can’t tell because the functionality works fine.
Either way any ideas on how I could get rid of this error message?

public class Player : Character

{
public GameObject Arms;//The character’s arms.
public BoxCollider Reach;//The length of reach.

void Awake()
{
              //initialize the box collider to be manipulated.
	BoxCollider Reach = (BoxCollider)Arms.collider;

}
          // varry the trigger box range in which you can reach
void Reaching (int x,int y,int z,int X,int Y,int Z)
	{	
		Reach.size = new Vector3(x,y,z);//range
		Reach.center = new Vector3(X,Y,Z);//placement
	}

Any help would be appreciated… I’ve been writing js. for a few years now, and just started with C# about a month ago so I’m still getting used to the syntax.

The problem is this:

BoxCollider Reach = (BoxCollider)Arms.collider;

what is happening here is you are creating a new variable, with the same name and type as one already existing in your class! So, instead of assigning something to the existing variable, it just creates a new one, that disappears as soon as it leaves the scope of Awake! To fix this, just change that line to

Reach = (BoxCollider)Arms.collider;

This way, it will use the existing variable, instead of creating a new one.

The reason it’s working properly, is presumably because you have set up ‘Reach’ in the inspector, and so Unity’s serialization is covering up any errors that are being caused by your code.