Fix static const char member variables wrappers with %javaconst(1).
This fixes the case when an integer is used as the initializer, such as:
struct W { static const char w = 100; };
The "valuetype" attribute has been added to the "cdecl" Node which enables
us to distinguish the declared type from the type of the initializer.
This commit is contained in:
parent
95eb6649ea
commit
7339de974d
4 changed files with 55 additions and 2 deletions
|
|
@ -20,6 +20,9 @@ static const char globcharB = '\102'; // B
|
|||
static const char globcharC = '\x43'; // C
|
||||
static const char globcharD = 0x44; // D
|
||||
static const char globcharE = 69; // E
|
||||
static const char globcharAE1 = 'Æ'; // AE (latin1 encoded)
|
||||
static const char globcharAE2 = '\306'; // AE (latin1 encoded)
|
||||
static const char globcharAE3 = '\xC6'; // AE (latin1 encoded)
|
||||
|
||||
struct CharTestClass {
|
||||
static const char memberchar0 = '\0';
|
||||
|
|
@ -30,5 +33,40 @@ struct CharTestClass {
|
|||
static const char membercharC = '\x43'; // C
|
||||
static const char membercharD = 0x44; // D
|
||||
static const char membercharE = 69; // E
|
||||
static const char membercharAE1 = 'Æ'; // AE (latin1 encoded)
|
||||
static const char membercharAE2 = '\306'; // AE (latin1 encoded)
|
||||
static const char membercharAE3 = '\xC6'; // AE (latin1 encoded)
|
||||
};
|
||||
%}
|
||||
|
||||
#if defined(SWIGJAVA)
|
||||
%javaconst(1);
|
||||
#endif
|
||||
|
||||
%inline %{
|
||||
static const char x_globchar0 = '\0';
|
||||
static const char x_globchar1 = '\1';
|
||||
static const char x_globchar2 = '\n';
|
||||
static const char x_globcharA = 'A';
|
||||
static const char x_globcharB = '\102'; // B
|
||||
static const char x_globcharC = '\x43'; // C
|
||||
static const char x_globcharD = 0x44; // D
|
||||
static const char x_globcharE = 69; // E
|
||||
static const char x_globcharAE1 = 'Æ'; // AE (latin1 encoded)
|
||||
static const char x_globcharAE2 = '\306'; // AE (latin1 encoded)
|
||||
static const char x_globcharAE3 = '\xC6'; // AE (latin1 encoded)
|
||||
|
||||
struct X_CharTestClass {
|
||||
static const char memberchar0 = '\0';
|
||||
static const char memberchar1 = '\1';
|
||||
static const char memberchar2 = '\n';
|
||||
static const char membercharA = 'A';
|
||||
static const char membercharB = '\102'; // B
|
||||
static const char membercharC = '\x43'; // C
|
||||
static const char membercharD = 0x44; // D
|
||||
static const char membercharE = 69; // E
|
||||
static const char membercharAE1 = 'Æ'; // AE (latin1 encoded)
|
||||
static const char membercharAE2 = '\306'; // AE (latin1 encoded)
|
||||
static const char membercharAE3 = '\xC6'; // AE (latin1 encoded)
|
||||
};
|
||||
%}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue