Commit Graph

1197 Commits

Author SHA1 Message Date
rdb af15797a25 Many, many performance optimizations and enhancements 2015-01-07 19:30:01 +01:00
rdb e8905b840c Use C++11 move semantics to dramatically improve PointerTo performance 2015-01-02 15:25:58 +01:00
rdb 368e1ca644 Support noexcept and rvalue references in C++ parser 2015-01-02 14:57:33 +01:00
rdb 202008c470 Support digraphs and alternate operator names in CPPParser 2015-01-02 14:55:06 +01:00
rdb be1eb1d812 More minor linux packaging fixes 2014-12-29 15:16:33 +01:00
rdb f189290dfe Support for automated build bot scripts, add PandaSystem::get_git_commit() 2014-12-22 20:27:37 +01:00
rdb 5aaaf72851 Fix issue with Eigen when matrix determinant is nearly 0
also fix error message for singular matrix
2014-12-10 16:32:04 +01:00
rdb b3fd8b94ad Interrogate should be able to parse any constexpr as enum value, including one that references a different enum value 2014-12-03 21:51:58 +01:00
rdb 4c10c9ec1f Oops, fix GCC 2014-11-26 21:14:35 +00:00
rdb 861234c349 Bunch of minor compile fixes and changes 2014-11-26 13:33:10 +00:00
rdb 3490be94b7 Fix deadlock issues with type registry 2014-11-21 16:51:36 +00:00
rdb c3bf91d608 GCC atomics also work in clang 3.0+ 2014-10-21 20:49:58 +00:00
rdb a65b477734 Commit patches by cfsworks:
cxx: Fix missing includes masked by composite builds.
misc: Fix typos in comments.
config: Fix missing config forward-declarations.
direct: Adjust Python imports to panda3d.* instead of pandac.*.
display: Split graphicsWindow out into an extension.
framework: Use if/elif/elif/endif instead of ifdef/elif/elif/endif.
ode: Remove erroneous INLINE declarations.
interval: Fix missing import.
2014-10-19 22:41:47 +00:00
rdb f3094043df Fix left shift in Python (LP bug #1289475) 2014-10-19 15:50:54 +00:00
rdb 31a71c990d Fix issues with OS X 10.9 compilation, fix issues uncovered by clang 2014-10-12 18:45:37 +00:00
rdb 3ed7ae0bd9 Oops; fix memory leak 2014-10-10 13:54:53 +00:00
rdb 902bedc314 Fix Python 3 crash on Windows, and fix some Python 3-related compile errors 2014-10-10 13:45:05 +00:00
rdb fbc3564bf9 More work on Android port 2014-10-08 15:09:25 +00:00
rdb 0a84dd9ca3 Android fixes 2014-10-06 17:44:58 +00:00
rdb 24386cdc1e Use a table to make InternalName::make more efficient for Python interned strings 2014-10-02 18:28:06 +00:00
rdb 778b4390f4 Temporary fix for Python 3 compilation error 2014-09-21 13:37:32 +00:00
rdb db7a6561f2 When finding comment for an enum, don't accidentally pick up a same-line comment of an enum value on the preceding line 2014-09-21 13:22:52 +00:00
rdb d9c529a5d0 Update prebuild cppBison files 2014-09-20 11:54:04 +00:00
rdb a6229f1fac Support for comments in enums. Improve comment handling in C++ parser. Improve doxygen reference. Update interrogate interface. (Addendum to interrogatedb v2.3.) 2014-09-19 23:34:11 +00:00
rdb c178aba639 Add property support to interrogate (using MAKE_PROPERTY or using published members) 2014-09-19 15:23:52 +00:00
rdb 8afd8b1f57 interrogatedb v2.3: elements can have comments 2014-09-19 15:18:08 +00:00
rdb 30d8cc29b3 Rewrite handling of stringify and token-paste operators to work better. Add support for variadic macros. 2014-09-19 15:14:11 +00:00
rdb 87910799b6 Split off epvector.h into its own file in an attempt to cut down compilation time 2014-09-14 22:04:36 +00:00
rdb 5437a3e5a9 Allow const variables with initializers to be used in expressions (like enum definitions). Also fix compiler warning. 2014-09-14 22:02:16 +00:00
rdb a044561be5 *Always* check for exceptions in C++ methods, otherwise we miss important exceptions thrown in Python code called by C++ methods (like SystemExit!) 2014-08-26 21:01:12 +00:00
rdb e468b293d1 Fix a longstanding memory leak in certain interrogate exception handlers.
Raise MemoryError when constructor returns NULL.
Properly check argument count of constructors that take no arguments.
2014-08-26 17:17:37 +00:00
rdb ab5e4f496b Fix cmath includes on GNU 2014-08-21 17:00:57 +00:00
rdb 4db966f431 GNU needs #include <limits> for numeric_limits 2014-08-21 16:54:44 +00:00
rdb a7f2f50236 Move string_utils.* to from putil to dtoolutil 2014-08-20 19:33:55 +00:00
rdb 515f93a0b8 Better handling of nan/infinity. Previously, these weren't working on Windows in config strings. 2014-08-20 19:32:11 +00:00
rdb 24d705b031 The "null" ButtonHandle and TypeHandle now evaluate to false 2014-07-29 11:15:12 +00:00
rdb 3e974abf5d Fix silly bug with longs 2014-07-23 17:41:22 +00:00
rdb f02662d4e0 Improve interrogate code readability, use METH_STATIC for static methods, support anonymous enums 2014-07-22 20:06:59 +00:00
rdb e98618b105 Only use constexpr when the compiler conforms to C++11 2014-07-21 15:41:31 +00:00
rdb c257ce624e Interrogate overhaul that dramatically increases performance for the simpler methods 2014-07-18 13:54:38 +00:00
rdb dba717fe83 GCC 4.7 enables constexpr, not 4.6 2014-07-17 16:18:04 +00:00
rdb 1be0fb5169 Add atomic adjust impl that uses GCC intrinsics. Also, make use of "constexpr" when available. 2014-07-17 13:11:06 +00:00
rdb cba254d0bc Add wstring type handle. Also add some useful MAKE_SEQs. 2014-06-26 20:06:04 +00:00
rdb 5dae464394 Add integer vectors. Also add __pow__ operator to vectors. 2014-06-11 18:01:50 +00:00
rdb 634190281d Support __pow__ in interrogate 2014-06-11 17:17:45 +00:00
rdb 5b967671fa Fix Python 3 build issue with iterator extensions 2014-05-23 13:42:26 +00:00
rdb d5d5de1d7e Make iterators work with interrogate by mapping None to NULL for the iternext method. Not the best solution, but is easy and fits most use cases. 2014-03-27 15:15:58 +00:00
rdb 31a192f27b Fix interrogate understanding of PY_VERSION_HEX 2014-03-09 11:43:08 +00:00
rdb ae4bddd7f7 Fix Python 3 compile issue 2014-03-09 01:00:23 +00:00
rdb c213712600 fix windows build when the module is in different dll than the library defs 2014-02-20 18:38:35 +00:00