diff --git a/Lib/php4/php4kw.swg b/Lib/php4/php4kw.swg index b2d2fa0f8..075e349b4 100644 --- a/Lib/php4/php4kw.swg +++ b/Lib/php4/php4kw.swg @@ -1,20 +1,22 @@ -#ifndef __php_phpkw_swg__ -#define __php_phpkw_swg__ +// +// The 'keywords' in PHP are global, ie, the following names are fine +// when used as class methods. +// -/* Warnings for Php keywords */ -#define PHPKW(x) %namewarn("314:" `x` " is a php keyword") `x` +#define PHPKW(x) %namewarn("314:" `x` " is a php keyword",rename="_%s") "::" `x` #define PHPBN(x) %namewarn("321:" `x` " conflicts with a built-in name in php") "::" `x` /* - from - http://aspn.activestate.com/ASPN/docs/PHP/reserved.html + From + + http://aspn.activestate.com/ASPN/docs/PHP/reserved.html + + and reviewed by Olly Betts. */ - +/* we catalog these as kw since PHP will not run if used globally */ PHPKW(and); -PHPKW($argc); -PHPKW($argv); PHPKW(as); PHPKW(break); PHPKW(case); @@ -25,69 +27,53 @@ PHPKW(declare); PHPKW(default); PHPKW(die); PHPKW(do); -PHPKW(E_ALL); PHPKW(echo); -PHPKW(E_ERROR); PHPKW(else); PHPKW(elseif); +PHPKW(empty); PHPKW(enddeclare); PHPKW(endfor); PHPKW(endforeach); PHPKW(endif); PHPKW(endswitch); PHPKW(endwhile); -PHPKW(E_PARSE); PHPKW(eval); -PHPKW(E_WARNING); PHPKW(exit); PHPKW(extends); -PHPKW(FALSE); -PHPKW(__FILE__); PHPKW(for); PHPKW(foreach); PHPKW(function); PHPKW(global); -PHPKW($HTTP_COOKIE_VARS); -PHPKW($HTTP_ENV_VARS); -PHPKW($HTTP_GET_VARS); -PHPKW($HTTP_POST_FILES); -PHPKW($HTTP_POST_VARS); -PHPKW($HTTP_SERVER_VARS); PHPKW(if); PHPKW(include); PHPKW(include_once); -PHPKW(__LINE__); PHPKW(list); PHPKW(new); -PHPKW(not); -PHPKW(NULL); PHPKW(old_function); PHPKW(or); -PHPKW(parent); -PHPKW(PHP_OS); -PHPKW($PHP_SELF); -PHPKW(PHP_VERSION); +PHPKW(print); PHPKW(require); PHPKW(require_once); PHPKW(return); -PHPKW(__sleep); PHPKW(static); -PHPKW(stdClass); PHPKW(switch); -PHPKW($this); -PHPKW(TRUE); PHPKW(var); -PHPKW(virtual); -PHPKW(__wakeup); PHPKW(while); PHPKW(xor); - -// These are bad names only if global. -PHPBN(empty); -PHPBN(print); - +/* we catalog these as built-in names since they conflicts, but PHP still runs */ +PHPBN(E_ALL); +PHPBN(E_ERROR); +PHPBN(E_PARSE); +PHPBN(E_WARNING); +PHPBN(FALSE); +PHPBN(PHP_OS); +PHPBN(PHP_VERSION); +PHPBN(TRUE); +PHPBN(__sleep); +PHPBN(__wakeup); #undef PHPKW +#undef PHPBN + -#endif //__php_phpkw_swg__ diff --git a/Lib/python/pythonkw.swg b/Lib/python/pythonkw.swg index dcc2c8e97..0960af5fb 100644 --- a/Lib/python/pythonkw.swg +++ b/Lib/python/pythonkw.swg @@ -2,8 +2,8 @@ Warnings for Python keywords, built-in names and bad names. */ -#define PYTHONKW(x) %namewarn("314:" #x " is a python keyword") #x -#define PYTHONBN(x) %namewarn("321:" #x " conflicts with a built-in name in python") "::"#x +#define PYTHONKW(x) %namewarn("314:" `x` " is a python keyword, symbol will be renamed as '_" `x`"'", rename="_%s") `x` +#define PYTHONBN(x) %namewarn("321:" `x` " conflicts with a built-in name in python") "::"`x` /* @@ -40,7 +40,6 @@ PYTHONKW(return); PYTHONKW(try); PYTHONKW(while); PYTHONKW(yield); -PYTHONKW(staticmethod); /* built-in functions @@ -49,20 +48,26 @@ PYTHONKW(staticmethod); PYTHONBN(abs); PYTHONBN(apply); +PYTHONBN(bool); PYTHONBN(buffer); PYTHONBN(callable); PYTHONBN(chr); +PYTHONBN(classmethod); PYTHONBN(cmp); PYTHONBN(coerce); PYTHONBN(compile); PYTHONBN(complex); PYTHONBN(delattr); +PYTHONBN(dict); PYTHONBN(dir); PYTHONBN(divmod); +PYTHONBN(enumerate); PYTHONBN(eval); PYTHONBN(execfile); +PYTHONBN(file); PYTHONBN(filter); PYTHONBN(float); +PYTHONBN(frozenset); PYTHONBN(getattr); PYTHONBN(globals); PYTHONBN(hasattr); @@ -74,6 +79,7 @@ PYTHONBN(int); PYTHONBN(intern); PYTHONBN(isinstance); PYTHONBN(issubclass); +PYTHONBN(iter); PYTHONBN(len); PYTHONBN(list); PYTHONBN(locals); @@ -81,21 +87,32 @@ PYTHONBN(long); PYTHONBN(map); PYTHONBN(max); PYTHONBN(min); +PYTHONBN(object); PYTHONBN(oct); PYTHONBN(open); PYTHONBN(ord); PYTHONBN(pow); +PYTHONBN(property); PYTHONBN(range); PYTHONBN(raw_input); PYTHONBN(reduce); PYTHONBN(reload); PYTHONBN(repr); +PYTHONBN(reversed); PYTHONBN(round); +PYTHONBN(set); PYTHONBN(setattr); PYTHONBN(slice); +PYTHONBN(sorted); +PYTHONBN(staticmethod); +PYTHONBN(staticmethod); PYTHONBN(str); +PYTHONBN(sum); +PYTHONBN(super); PYTHONBN(tuple); PYTHONBN(type); +PYTHONBN(unichr); +PYTHONBN(unicode); PYTHONBN(vars); PYTHONBN(xrange); PYTHONBN(zip); @@ -109,6 +126,7 @@ PYTHONBN(True); PYTHONBN(False); PYTHONBN(None); + /* 'self' is also a bad Name */ diff --git a/Lib/ruby/rubykw.swg b/Lib/ruby/rubykw.swg index 73d7276d2..6813cc529 100644 --- a/Lib/ruby/rubykw.swg +++ b/Lib/ruby/rubykw.swg @@ -2,7 +2,7 @@ #define __ruby_rubykw_swg__ /* Warnings for Ruby keywords */ -#define RUBYKW(x) %namewarn("314:" #x " is a ruby keyword") #x +#define RUBYKW(x) %namewarn("314:'" `x` "' is a ruby keyword, and it will renamed as 'C_"`x`"'",rename="C_%s") `x` /* @@ -49,11 +49,7 @@ RUBYKW(end); RUBYKW(next); RUBYKW(return); RUBYKW(until); - -/* swig doesn't like this one in a macro, adding it by hand */ -//RUBYKW(defined); -%namewarn("314: defined is a ruby keyword") "defined"; - +RUBYKW("defined"); #undef RUBYKW