RSS
Follow Us
Contribute
 
 
 
 

Error C2733: second C linkage of overloaded function (function) not allowed

 
We need YOUR SKILLS in this collaborative work, to build the largest solution center for error messages.

From $1

Table of contents
  1. 1. Cause
  2. 2. Solution
  3. 3. About This Article

Cause

More than one overloaded function is declared with C linkage. When using C linkage, only one form of a specified function can be external. Since overloaded functions have the same undecorated name, they cannot be used with C programs. Ex:

extern "C" {
   void F1(int);
}

extern "C" {
   void F1();   // C2733
}

Solution

Possible resolution:

extern "C" {
   void F1(int);
}

extern "C" {
   void F2();
}

About This Article

This article is a derivative work based on Compiler Error C2733 which is provided by MSDN Community Content - Visual C++.

 
 
 
 
Comments