Pesquisar na Comunidade
Showing results for tags 'Warning'.
Encontrado 2 registros
-
Remoção de Hints e Warning do ACBr
um tópico no fórum postou Waldir Paim Dúvidas Gerais sobre o ACBr
Olá a todos! De acordo com outros tópicos que estão orientando a migração para compiladores mais modernos. Quero na medida do possível ajudar para que o código fique cada fez melhor e com menos hints e Warnings. Colei abaixo um exemplo do que estou dizendo. Esse exemplo acima foi gerado na instalação do package ACBr_Diversos no D7; Mas ele não mostra nem uma parte dos alertas que a IDE mais nova mostra. Como apresenta no trecho abaixo. No exemplo acima é apenas uma parte, em alguns projetos chego ter acima de 2 mil avisos desses. Sei que a IDE faz o cast forçado, mas no entanto isso para um controle do código final fica muito mais limpo e de fácil manutenção. Não fiz nenhuma alteração ainda pois depende da abordagem e da importância que os cordeadores e mantenedores das units tomarão. -
Warnings Do Delphi Nas Units Do Acbr
um tópico no fórum postou Lucas Rutkoski Dúvidas Gerais sobre o ACBr
Bom dia! Primeiramente gostaria de me apresentar e já agradecer a comunidade que criou este pacote de componentes, pois tem sido muito úteis na empresa onde trabalho. Aqui, sempre que encontrávamos algum ajuste ou melhoria que podia ser feito, meus colegas postavam no fórum e verificavam com vocês, mas agora resolvi vir aqui e dar minhas ideias também. Bom, eu sempre fui meio "nazista" com os avisos e mensagens do compilador nos projetos que participei, pois sempre acreditei que se existe um warning, pode existir um erro, e é por isto que crio este tópico para tentarmos diminuir estes avisos. Vou listar abaixo por unit e método a mensagem que encontrei e como eu a corrigi. Tentei anexar os patchs do Subversion no tópico, mas o fórum me avisou que não tenho permissão para anexar este tipo de arquivo. Se alguém puder liberar isto, posso encaminhar pra vocês a minha solução. Unit: ACBrEFDBlocos Método: function StrToCodVer(AValue: string): TACBrVersaoLeiaute; Mensagem: [DCC Warning] ACBrEFDBlocos.pas(450): W1035 Return value of function 'StrToCodVer' might be undefined Solução: O warning acima é mostrado porque o compilador não consegue encontrar um "Result" padrão para quando o parâmetro "AValue" do método não for um dos já esperados nos IFs da rotina. Teríamos então de criar um retorno padrão ou então levantar uma exceção para o programador, como eu fiz no patch anexo. Unit: ACBrUtil Método: function FlushFileToDisk( sFile: string): boolean; Mensagem: [DCC Warning] ACBrUtil.pas(2006): W1044 Suspicious typecast of string to PWideChar Solução: Aqui o compilador não tem certeza de como converter a variável "filenome" de "String" para "PWideChar" diretamente, o que pode fazer com que o cast implícito feito por ele faça a string perder dados. A solução aqui seria explicitarmos o cast de "String" para "PWideChar" da seguinte forma: String->WideString->PWideChar. Unit: ACBrEFDBloco_1_Class Método: function TBloco_1.Registro1922New: TRegistro1922; Mensagem: [DCC Warning] ACBrEFDBloco_1_Class.pas(1264): W1036 Variable 'U1921Count' might not have been initialized Solução: Aqui houve um pequeno equivoco na variável utilizada para acessar o último item do registro 1920, pois estamos utilizando a variável que guarda o índice do último item do Regitro 1921, que ainda não foi preenchida. E era isto! Peço desculpas se isto já foi postado por alguém ou se criei o tópico no lugar errado e espero ter sido útil!- 8 replies
-
- ACBrEFDBlocos
- Warning
-
(e 1 mais)
Tags: