also while (PIND.6==0) geht auch nicht. Versuchs mal
mit while ( !(PIND & (1 << 6)) ) ;, das ist C-konform.