GSM Shield

porque não adicionar esta linha em vez do que estavas a tentar fazer?

const unsigned int pinoBotao = 12;

Eu não indico os pinos a utilizar porque regra geral as pessoas já sabem os pinos e já viram exemplos de como a digitalRead funciona para perceber o resto.

Vê se funciona e dá notícias.