Index: uspace/lib/c/generic/elf/elf_load.c
===================================================================
--- uspace/lib/c/generic/elf/elf_load.c	(revision 55092672530a7c5f20b1e050bbe7c09cd6527df6)
+++ uspace/lib/c/generic/elf/elf_load.c	(revision 9283830f49ecdb0b8a77c1fd2b8d90175b10e756)
@@ -112,4 +112,5 @@
 	pcb->dynamic = info->finfo.dynamic;
 	pcb->rtld_runtime = info->env;
+	pcb->cpp_data = info->finfo.cpp_data;
 }
 
Index: uspace/lib/c/generic/elf/elf_mod.c
===================================================================
--- uspace/lib/c/generic/elf/elf_mod.c	(revision 55092672530a7c5f20b1e050bbe7c09cd6527df6)
+++ uspace/lib/c/generic/elf/elf_mod.c	(revision 9283830f49ecdb0b8a77c1fd2b8d90175b10e756)
@@ -198,4 +198,9 @@
 	size_t phdr_len = header->e_phnum * header->e_phentsize;
 
+	elf->info->interp = NULL;
+	elf->info->dynamic = NULL;
+	elf->info->cpp_data.ctors_count = 0;
+	elf->info->cpp_data.dtors_count = 0;
+
 	if (phdr_len > sizeof(phdr)) {
 		DPRINTF("more than %d program headers\n", phdr_cap);
