Um pequeno complemento no texto anterior. O programa chamado "errado" roda sem problemas aparentes se nao e usada a opcao -fbounds-check (ou -fcheck=bounds na versao mais atualizada).program erradoimplicit noneinteger,dimension(:),allocatable :: ainteger :: ballocate(a(10))b = a(11)endprogram erradoUsando o Valgrind (mais especificamente, a ferramenta MemCheck), aparece o seguinte aviso:==5433== Invalid read of size 4==5433== at 0x4008F2: MAIN__ (errado.f03:6)==5433== by 0x40094A: main (errado.f03:7)Rodando um segundo programa, que eu fiz pra continuar testando como se encontrar os erros, encontrei o seguinte:program errado2integer,parameter :: kr = 8integer,dimension(6) :: rreal(kr),dimension(:),allocatable :: a,binteger :: i,jallocate(a(10),b(10))b = (/ (real(i,kr),i=1,10) /)do i=1,10 r = (/ (i+j,j=1,6) /) write(*,'(6ES13.3E3)')a(r)enddodo i=1,10 r = (/ (i+j,j=1,6) /) write(*,'(6ES13.3E3)')b(r)enddowrite(*,*)'Fim'endprogram errado2$ valgrind --track-origins=yes ./errado2*** algumas linhas cortadas ***==5672== Conditional jump or move depends on uninitialised value(s)==5672== at 0x4F0FF57: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F10BC6: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F11D80: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F0AC25: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F08F72: _gfortran_transfer_array (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x400E8F: MAIN__ (errado2.f03:15)==5672== by 0x40118F: main (errado2.f03:24)==5672== Uninitialised value was created by a heap allocation==5672== at 0x4C28B8C: malloc (vg_replace_malloc.c:270)==5672== by 0x400AD7: MAIN__ (errado2.f03:9)==5672== by 0x40118F: main (errado2.f03:24)==5672== ==5672== Syscall param write(buf) points to uninitialised byte(s)==5672== at 0x58E0AF0: __write_nocancel (syscall-template.S:82)==5672== by 0x4F0E0BC: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F145EE: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F09B76: ??? (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x4F0A458: _gfortran_st_write_done (in /usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0)==5672== by 0x400E9E: MAIN__ (errado2.f03:15)==5672== by 0x40118F: main (errado2.f03:24)*** mais algumas linhas cortadas ***A opcao --track-origins=yes mostra as informacoes em Unitialised value was created by a heap allocation...As linhas que apontam onde esta o erro (dessas que eu colei acima) sao as seguintes:==5672== by 0x400E8F: MAIN__ (errado2.f03:15)==5672== by 0x400AD7: MAIN__ (errado2.f03:9)==5672== by 0x400E9E: MAIN__ (errado2.f03:15)Nota-se que a linha 9 e onde a variavel e alocada, e esse local e apontado onde diz como o valor nao inicializado foi criado. O escritor Joao Bosco Bezerra Bonfim, convidado do projeto Encontros Roedores de Livros de Literatura Infantil, esteve no Roedores de Livros lendo obras de sua autoria para nossa turma. No video, a leitura-brinquedo de trecho do livro A Botija de Outro (il. Rogerio Coelho, DCL). Querido Joao Bosco, adoramos a visita. Volte sempre!P.S. Ainda pelo projeto, Joao Bosco Bezerra Bonfim encontrara leitores da Escola Classe 54, de Taguatinga, no proximo 22 de setembro. Hoje, alguns ratinhos atrasados puderam ver pela primeira vez a exposicao "Como nasce um livro ilustrado", que contem os desenhos originais do livro "Cade juizo do menino". Essa exposicao faz parte do Encontros Roedores de Livros de Literatura Infantil. Buscamos, juntos, por todos os parafusos escondidos nos desenhos, mas nao temos certeza se nesse processo nao acabamos deixando os nossos proprios parafusos no caminho! =D Hoje foi o ultimo dia de clube do livro deste ano. Vamos ter que esperar pelo ano que vem para saber como a familia bandeira pirata conseguira escapar das horriveis Bruxas do Mar e para descobrir se Rodger conseguira escapar do senhor Tordo para finalmente se reencontrar com Amanda Mexilhao a onde quer que ela esteja. Nao sei se conseguiremos aguentar tanta ansiedade para saber o desfecho dessas e de outras historias que estao por vir! A toca esta agitada, comecamos nossos preparativos para a chegada de uma pessoa