Share via


Bağlayıcı Araçları Uyarısı LNK4078

farklı özniteliklere sahip birden çok 'bölüm adı' bölümü bulundu

LINK, aynı ada ancak farklı özniteliklere sahip iki veya daha fazla bölüm buldu.

Bu uyarıya, LINK veya LIB'nin önceki bir sürümü tarafından oluşturulan bir içeri aktarma kitaplığı veya dışarı aktarma dosyası neden olabilir.

Dosyayı yeniden oluşturun ve yeniden bağlanın.

Örnek

LNK4078 hataya neden olan bir değişiklik de olabilir: x86'da init_seg tarafından adlandırılan bölüm okundu/yazıldı, artık salt okunur.

Aşağıdaki örnek LNK4078 oluşturur.

// LNK4078.cpp
// compile with: /W1
// LNK4078 expected
#include <stdio.h>
#pragma warning(disable : 4075)
typedef void (__cdecl *PF)(void);
int cxpf = 0;   // number of destructors to call
PF pfx[200];   // pointers to destructors.

struct A { A() {} };

int myexit (PF pf) { return 0; }

#pragma section(".mine$a", read, write)
// try the following line instead
// #pragma section(".mine$a", read)
__declspec(allocate(".mine$a")) int ii = 1;

#pragma section(".mine$z", read, write)
// try the following line instead
// #pragma section(".mine$z", read)
__declspec(allocate(".mine$z")) int i = 1;

#pragma data_seg()
#pragma init_seg(".mine$m", myexit)
A bbbb;
A cccc;
int main() {}