Re: [IRPF-Livre] Possível erro em src/serpro/ppgd/negocio/Valor.java impacta todas as operações

Adonay Felipe Nogueira adfeno.7046 en gmail.com
Sab Mayo 25 23:14:25 UTC 2024


Em 20/05/2024 05:55, Alexandre Oliva escreveu:
> Pra mim aconteceu o contrário.  O IRPF-Livre com essas modificações está
> me dando 3 centavos de desconto no imposto devido, comparado com o de
> referência, e a conta que eu fiz na calculadora concorda com o programa
> de referência.
> 
> Dividir por 100 para só depois aplicar o percentual, num valor com
> limitação de precisão, vai necessariamente perder precisão.
> 
> Não encontrei fundamento jurídico nem técnico para essa truncagem
> prévia.  Posso perguntar de onde veio essa ideia?

Se você estiver se referindo aos métodos na revisão r19553 (introduzidos 
pela revisão r19537), onde se divide _baseCalculo para depois aplicar a 
alíquota então, com base no seu relato, concordo que eu talvez tenha 
cometido um erro que, até onde sei, já foi corrigido pelas alterações 
feitas por você na revisão r19566.

Minhas alterações até então tinham como vantagem oculta facilitar 
futuros contribuidores na procurar da porcentagem em sua notação 
amigável, claro que minha ideia não funcionou, e neste caso, sempre 
podemos incluir textos como "7,5%" como comentário.

> Notei que a alíquota de 27,5%, na qual esbarrei no problema, aumentava a
> precisão para fazer o cálculo, mas esse aumento de precisão foi
> descartado.  Recomendo fortemente trazê-lo de volta.
> 
> Talvez seja até o caso de estendê-lo às demais alíquotas, como no
> patchlet a seguir.  Isso passa nos seus testes?

De fato, passam nos meus testes e, conforme notei na minha resposta 
acima, agradeço novamente por já ter implementado a correção.

> Uma hipótese que me ocorre é que tenham mudado a forma de cálculo em
> 2021, e talvez ali os resultados tenham começado a divergir.

Do pouco que testei no programa de referência, existe sim uma forma 
diferente de tratar casas decimais superiores a dois dígitos, onde neste 
há o arredondamento, em vez do truncamento, contrariando assim a 
definição padrão do tipo Valor. Todavia, como existem pelo menos duas 
formas de arredondamento, teria que testar extensivamente o programa 
privativo para saber como este o faz (podem haver mais dependendo de 
como seriam tratadas a quarta casa decimal em diante). O programa 
privativo pode ainda estar fazendo uso das operações de teto ou piso.

> Isso sugeriria que os anos anteriores também estavam dando números
> menores para alíquotas com 3 casas decimais.  Notei que fui eu quem
> introduziu o código pras alíquotas 7,5% e 22,5% em 2010, então, ao
> contrário de minha suspeita anterior, isso não é código do IRPF2007.
> 
> É bem capaz que eu não tenha testado adequadamente essas modificações.
> 
> Se estou entendendo direito agora, talvez a alíquota de 15% nem precise
> da precisão adicional, pois 0,15 só tem duas casas.  Faz sentido, pelo
> que você investigou do código?

Faz sentido sim.
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <http://www.fsfla.org/pipermail/softwares-impostos/attachments/20240525/66762c8f/attachment.sig>


Más información sobre la lista de distribución Softwares-impostos