Q:

Error: request for member 'a' in something not a structure or union

I am passing pointer to pointer to typedef struct to the function.  When I try to change the content of typedef struct, it gives me following error: 

request for member 'a' in something not a structure or union
  }

The code:
typedef struct _tempStruct
{
    int a;
    int b;
}TempStruct;

void _function(TempStruct ** param)
{
    TempStruct *temp = *param;
    temp -> a = 5; //no error
    *param -> a = 6; //error: request for member 'a' in something not a structure or union
}

Here is the link of code on ideone. 
What I am missing? 

A:

-> has a higher precedence than that of *(indirection), so
*param -> a = 6;

should be
(*param)->a = 6;

A:

The arrow -> operator binds more tightly than the * does.   You need:
(*param)->a = 6;

Don't put spaces around -> or .;  they bind very tightly.   Spaces mark you as a neophyte.