Since SIDL maps onto many other languages there are a great number of words and constructs that are harmless in SIDL, but cause great trouble in generated language bindings. We list known problems in Table A.2.
In addition, the following should be avoided:
WORD | C | C++ | Java | Python | word | C | C++ | Java | Python | ||
---|---|---|---|---|---|---|---|---|---|---|---|
abstract | X | lambda | X | ||||||||
and | X | X | long | X | X | X | |||||
and_eq | X | mutable | X | ||||||||
asm | X | X | namespace | X | |||||||
assert | X | native | X | ||||||||
auto | X | X | new | X | X | ||||||
bitand | X | not | X | X | |||||||
bitor | X | not_eq | X | ||||||||
bool | X | null | X | ||||||||
boolean | X | operator | X | ||||||||
break | X | X | X | X | or | X | X | ||||
case | X | X | X | or_eq | X | ||||||
catch | X | X | package | X | |||||||
char | X | X | X | pass | X | ||||||
class | X | X | X | ||||||||
compl | X | private | X | X | |||||||
const | X | X | X | protected | X | X | |||||
const_cast | X | public | X | X | |||||||
continue | X | X | X | X | raise | X | |||||
def | X | register | X | X | |||||||
default | X | X | X | reinterpret_cast | X | ||||||
del | X | return | X | X | X | X | |||||
delete | X | short | X | X | X | ||||||
do | X | X | X | signed | X | X | |||||
double | X | X | X | sizeof | X | X | |||||
dynamic_cast | X | static | X | X | X | ||||||
elif | X | static_cast | X | ||||||||
else | X | X | X | X | strictfp | X | |||||
enum | X | X | struct | X | X | ||||||
except | X | super | X | ||||||||
exec | X | switch | X | X | X | ||||||
explicit | X | synchronized | X | ||||||||
export | X | template | X | ||||||||
extends | X | this | X | X | |||||||
extern | X | X | throw | X | X | ||||||
false | X | X | throws | X | |||||||
final | X | transient | X | ||||||||
finally | X | X | true | X | X | ||||||
float | X | X | X | try | X | X | X | ||||
for | X | X | X | X | typedef | X | X | ||||
friend | X | typeid | X | ||||||||
from | X | typename | X | ||||||||
global | X | union | X | X | |||||||
goto | X | X | X | unsigned | X | X | |||||
if | X | X | X | X | using | X | |||||
implements | X | virtual | X | ||||||||
import | X | void | X | X | X | ||||||
inline | X | volatile | X | X | X | ||||||
instanceof | X | wchar_t | X | ||||||||
int | X | X | X | while | X | X | X | X | |||
interface | X | xor | X | ||||||||
is | X | xor_eq | X |