Neste código
read(unit,'I0',err=100) my_integer
100 error_stop "Something went wrong."
o especificador err informa ao programa para ir para a instrução rotulada 100
se algo deu errado na leitura de um inteiro do arquivo com identificador de unidade unit
.
Existe alguma alternativa para esse tipo de tratamento de erros? Conheço algumas soluções alternativas, como usar inquire
para descobrir se um arquivo existe ou outras maneiras de detectar o fim de um arquivo. Mas, para um caso como este, em que tento ler um inteiro e, por algum motivo, não consigo, existe outra maneira de detectar esse erro?
Pergunto isso porque parece um tanto obsoleto usar rótulos de instruções. Talvez eu esteja apenas presumindo isso porque goto
instruções são consideradas obsoletas. Por favor, corrija-me se eu estiver errado.