Per l'insord mi dice invalid use of non-Lvalue array ed è sul rigo riguardante il strcmp.
per la funzione cerca invece, passing arg2 of strcmp makes pointer from integer without a cast.
il primo penso di averlo risolto tramite questa modifica:
void insord1 (TLista_primaria *l,TAtomo_primaria e){
char c;
TAtomo_primario tmp;
tmp=car(*l);
c=strcmp(tmp.elemento,e.elemento);
if(null(*l)||c>0)
cons(l,e);
else
insord1(&((*l)->succ),e);
}