#include <stdlib.h>
#include <string.h>
#include "list.h"
+#include "conjuge.h"
+#include "sistema.h"
#include "rendimento.h"
#include "isento.h"
#include "pagamento.h"
#include "bem.h"
+#include "dependente.h"
#include "pmhash.h"
struct declaracao * declaracao_new(int ano)
dec->bens = list_new();
if (!dec->bens)
goto out_bens;
+ dec->dependentes = list_new();
+ if (!dec->dependentes)
+ goto out_dependentes;
dec->totais = pmhash_new();
if (!dec->totais)
goto out_totais;
dec->tipo = SIMPLES;
return dec;
out_totais:
+ list_free(dec->dependentes, dependente_free);
+out_dependentes:
list_free(dec->bens, bem_free);
out_bens:
list_free(dec->pagamentos, pagamento_free);
list_free(dec->isentos, isento_free);
list_free(dec->pagamentos, pagamento_free);
list_free(dec->bens, bem_free);
+ list_free(dec->dependentes, dependente_free);
pmhash_del(dec->totais);
+ conjuge_free(dec);
+ sistema_free(dec);
free(dec);
}