O número de linhas é utilizado para obter o rendimento cuja linha será gerada.
No entanto, com o novo formato de 2018, este método não funciona sempre.
A utilização de um ponteiro de uso temporário na declaração resolve o problema,
e é menos sujeito a erros.
unsigned long rhash;
int verbose;
char *error;
unsigned long rhash;
int verbose;
char *error;
};
struct declaracao * declaracao_new(int ano);
};
struct declaracao * declaracao_new(int ano);
int subcodigo, int codigoreal)
{
struct isento *i;
int subcodigo, int codigoreal)
{
struct isento *i;
- i = isento_get(dec, codigo, dec->linhas[codigo]);
fprintf(f, "%02d", codigoreal);
fprintf(f, "%-11.11s", dec->cpf); /* Titular */
/* Titular (T), Dependente (D), Alimentando (A), FIXME Alimentando */
fprintf(f, "%02d", codigoreal);
fprintf(f, "%-11.11s", dec->cpf); /* Titular */
/* Titular (T), Dependente (D), Alimentando (A), FIXME Alimentando */
isento = isento_get(dec, codigo, i); \
if (!isento) \
break; \
isento = isento_get(dec, codigo, i); \
if (!isento) \
break; \
W(fn); \
}
if (dec->ano <= 2017) {
W(fn); \
}
if (dec->ano <= 2017) {