Chad Austin
d990cb17d8
Finally! JSInterface is dead
2013-04-18 20:08:17 +03:00
Chad Austin
c2bc8d4f1e
implement perfect forwarding in embind
2013-04-18 20:08:16 +03:00
Chad Austin
426cbf616c
Support returning movable types
2013-04-18 20:08:15 +03:00
Chad Austin
6a4574cfe4
Add support for returning std::wstring
2013-04-18 20:08:09 +03:00
Bill Welden
ebb2069d80
Removed dependency on Northstar.
2013-04-18 20:08:08 +03:00
Bill Welden
de80f9c041
Support for intrusive pointers. This dependency on Northstar must be removed before pusing embind to GitHub.
2013-04-18 20:08:07 +03:00
Chad Austin
bdeab9a671
fix a bug in optional argument lists
2013-04-18 20:08:06 +03:00
Chad Austin
17639c372a
allow optional implementation of non-abstract virtual methods
2013-04-18 20:08:05 +03:00
Chad Austin
f554c2fac0
Generalize class property access.
2013-04-18 20:08:04 +03:00
Alon Zakai
985765d9a5
Merge pull request #1044 from imvu/embind_update
...
Embind update
2013-04-16 14:03:43 -07:00
Jukka Jylänki
2f7322d0d0
Revert "Fix cxa_demangle compile errors". By feedback from azakai, we want to keep our libcxxabi clean from custom changes w.r.t. upsstream libcxxabi.
...
This reverts commit 848c186df3
.
2013-04-16 11:44:51 +03:00
Alon Zakai
6749401c21
use compiled i64 div and rem
2013-04-14 17:19:50 -07:00
Alon Zakai
84c58ecc4a
use compiled compiler-rt code for i64 multiplication
2013-04-14 16:33:12 -07:00
Alon Zakai
eeaacf90a9
add compiler-rt files for 64-bit math
2013-04-14 09:10:15 -07:00
Arlo Breault
2ce87cf7d9
socketpair
2013-04-13 14:57:50 -07:00
Jukka Jylänki
af586c3c8e
Revert "Bring back EMSCRIPTEN_KEEPALIVE" - instead directly use the __attribute__((used)) macro in embind/bind.cpp.
...
This reverts commit cbf636a88bcfcabf084331fc4d8a445cacb158f9.
2013-04-12 14:27:39 +03:00
Chad Austin
a28ef129d6
Allow instantiation of subclass wrappers with smart pointers.
2013-04-12 14:27:37 +03:00
Bruce Mitchener
01c2ac873f
Stop using cxa_demangle in embind.
...
With an updated libcxx, we no longer have libcxxabi in the
include path, so we can't have the demangling code in the
build.
2013-04-12 14:27:35 +03:00
Chad Austin
545dc8ef97
support overloaded index access
2013-04-12 14:27:32 +03:00
Chad Austin
9baac4cd7c
Add support for index access to value_tuple and value_struct
2013-04-12 14:27:30 +03:00
Chad Austin
7eb89c3e4f
refactoring
2013-04-12 14:27:21 +03:00
Chad Austin
f508d6306f
Allow value_tuple and value_struct to be registered as global constants. This involved reworking how value_struct and value_tuple are registered.
2013-04-12 14:27:19 +03:00
Chad Austin
d4bf6fbe29
Add support for global constants.
2013-04-12 14:27:18 +03:00
Chad Austin
034ebb08d3
add a convenience for selecting a particular overload when binding a function.
2013-04-12 14:27:12 +03:00
Chad Austin
def5681c4f
Generalize and support mix-and-match member/non-member getter/setter for value types.
2013-04-12 14:27:08 +03:00
Chad Austin
fbcb6a4b34
add value_struct and value_tuple support for member function getters and setters.
2013-04-12 14:27:06 +03:00
Chad Austin
ecb01ee4b1
Support accessing value struct and tuple fields and elements via base class pointers.
2013-04-12 14:27:04 +03:00
Chad Austin
e5af621a18
Generalize support for struct fields
2013-04-12 14:27:03 +03:00
Chad Austin
de48fdc5b0
Further generalize support for tuple elements, and in the meantime, fix a bug that made it into one variant of the function but not the other...
2013-04-12 14:27:01 +03:00
Chad Austin
e30dd3017a
Restructure and generalize tuple accessors.
2013-04-12 14:26:59 +03:00
Chad Austin
8b1b35d8e3
Move context generation/copying out of JavaScript and into C++, where we'll be able to do some cool things in the future.
2013-04-12 14:26:57 +03:00
Jukka Jylanki
0c11a28ccf
Fix passing of UINT_MAX and ULONG_MAX from C++ to JS function. LLVM doesn't have u32 type, so UINT_MAX literal comes out as 'i32 -1' literal to JS, which whould treat it as a negative -1.0 double.
2013-04-12 14:26:50 +03:00
Jukka Jylanki
113721e6c6
Raise a TypeError if user tries to push an integer from JS side to C/C++ function exported with embind and the integer (char/short/int/long) is out of bounds of the data type expected by the C++ function.
2013-04-12 14:26:48 +03:00
Chad Austin
56783851c3
can look up module properties like HEAP8 from within C++ :)
2013-04-12 14:26:43 +03:00
Chad Austin
dbd1a3bfe2
Allow multiple arguments to emscripten::val::new_()
2013-04-12 14:26:41 +03:00
Chad Austin
d0d2471703
Fix a bug in external class function definitions and allow specifying functions that take smart pointers for 'this'
2013-04-12 14:26:38 +03:00
Chad Austin
b7936b0a61
Unify 'this' handling in class functions. 'this' is just the first argument to the method. This removes several special cases and will remove even more soon.
2013-04-12 14:26:36 +03:00
Chad Austin
0b8597a8db
Some tweaks to facilitate making value_struct and value_tuple simpler.
2013-04-12 14:26:34 +03:00
Chad Austin
e10ede1e07
Add sensible error messages when working with classes that depend on unbound types.
2013-04-12 14:26:32 +03:00
Chad Austin
0a6f5476f1
If calling function that uses unbound types, give a sensible error message.
2013-04-12 14:26:30 +03:00
Chad Austin
bfcc6330b2
Simplify getTypeName
2013-04-12 14:26:27 +03:00
Chad Austin
41b65f63c4
Fix a bug in embind when using const return values
2013-04-12 14:26:25 +03:00
Chad Austin
6f219fd0ca
Change EMSCRIPTEN_BINDINGS syntax and allow for out-of-order registration of value_tuple elements.
2013-04-12 14:26:22 +03:00
Chad Austin
78568fe4c2
Remove some dead code
2013-04-12 14:26:14 +03:00
Chad Austin
09effb641c
Simplify upcasting/downcasting, allow multiple smart pointer types per class, and use the same ClassHandle prototype so class handles and smart pointer handles share implementations for .clone() and .delete()
2013-04-12 14:26:12 +03:00
Chad Austin
bb23c470f0
Give each class a typeid function
2013-04-12 14:26:03 +03:00
Chad Austin
7d783d874a
Use typeid name for interface wrappers too. (Also introduce more uses of makeLegalFunctionName)
2013-04-12 14:25:57 +03:00
Chad Austin
fb92020f00
Add a static assertion that a classes's smart_ptr is compatible
2013-04-12 14:25:55 +03:00
Chad Austin
0badaf9b00
Allow smart pointers to have their actual type names.
2013-04-12 14:25:50 +03:00
Chad Austin
7c49e9f886
:O it works. Use a sharing policy approach to autocasting pointers.
2013-04-12 14:25:48 +03:00
Chad Austin
de9a8d6fec
make smart_ptr a method of class_ instead of a global
2013-04-12 14:25:46 +03:00
Chad Austin
495c40ce18
enable_if is scary and cool
2013-04-12 14:25:44 +03:00
Chad Austin
808e914ce1
Just toodling around with smart pointer binding syntax
2013-04-12 14:25:43 +03:00
Chad Austin
8a58711ab6
Throw an error if calling non-const methods on const objects.
2013-04-12 14:25:35 +03:00
Chad Austin
b2fb12ec07
I just learned about the sizeof... operator
2013-04-12 14:25:29 +03:00
Chad Austin
b72bbd3938
.field -> .property
2013-04-12 14:25:27 +03:00
Chad Austin
e698d8bbdb
classmethod -> class_function
2013-04-12 14:25:24 +03:00
Chad Austin
66b9991931
.method -> .function
2013-04-12 14:25:23 +03:00
Chad Austin
e7faeb6d50
reorder bindingtypes to make it easy to read
2013-04-12 14:25:15 +03:00
Chad Austin
3ac2105969
Kill the custom bindingtype for shared_ptr :)
2013-04-12 14:25:14 +03:00
Chad Austin
3dd168f24a
checkpoint work towards unifying the binding type for classes and smart pointers.
2013-04-12 14:25:12 +03:00
Chad Austin
6a0976ce2e
checkpoint work towards unifying the binding type for classes and smart pointers.
2013-04-12 14:25:11 +03:00
Chad Austin
6a1157c12b
Make it possible (again) to define a class before its base class is defined.
2013-04-12 14:25:06 +03:00
Chad Austin
ba6204bd5c
Rewrite how dependent type registrations are implemented. This reduces code size both in JS and C++. There are some known bugs. I'll get to those soon.
2013-04-12 14:25:02 +03:00
Chad Austin
8be7ebc9cc
Explicitly specify base classes. Alas, but it must be done for instanceof :(
2013-04-12 14:24:57 +03:00
Chad Austin
97373dc8c2
kinda start thinking about making isinstance work with base classes
2013-04-12 14:24:48 +03:00
Chad Austin
ececfcc02e
Add support for marshalling custom smart pointer types in and out of parameters.
2013-04-12 14:24:47 +03:00
Chad Austin
50c5092c4a
Kill the malloc(16) by writing a test with a 1 MB smart pointer type :)
2013-04-12 14:24:45 +03:00
Chad Austin
1a35260184
Preliminary support for custom smart pointers.
2013-04-12 14:24:44 +03:00
Chad Austin
067dbfd946
Mike Ey and I decided the smart pointer constructor form is different enough to deserve its own name.
2013-04-12 14:24:39 +03:00
Chad Austin
3adc0bd5ed
Turns out we can simplify and reuse a lot of code :o
2013-04-12 14:24:38 +03:00
Chad Austin
f23cc669e3
Add support for rvalue reference parameters on factories. I don't really understand this code.
2013-04-12 14:24:36 +03:00
Chad Austin
f22f586787
Apparently the WireType Marshaller is no longer necessary??
2013-04-12 14:24:34 +03:00
Chad Austin
612076a7cd
Kill a bunch of C-style casts
2013-04-12 14:24:33 +03:00
Chad Austin
088e1af2f1
allow specialization of get_element_type if using a smart pointer with a different mechanism for looking up the pointee type
2013-04-12 14:24:27 +03:00
Chad Austin
55ebc1f669
Rework how vectors and maps are bound: add bounds checking and return undefined if out of bounds.
2013-04-12 14:24:25 +03:00
Chad Austin
4185573aca
Support external raw pointer constructors.
2013-04-12 14:24:22 +03:00
Chad Austin
f7b5f283e1
Use length-prefix strings instead of null-terminated strings to support passing strings with embedded nul characters.
2013-04-12 14:24:12 +03:00
Chad Austin
78548810ba
Allow const non-member functions
2013-04-12 14:24:10 +03:00
Chad Austin
07cd277b4d
Use standard method machinery for array access.
2013-04-12 14:24:09 +03:00
Chad Austin
176000557d
allow non-member functions bound as methods.
2013-04-12 14:24:08 +03:00
Chad Austin
04d596f040
Replace operator call with a method invoking said operator call, so isinstance works again. When Function.create exists we can have the benefit of both worlds.
2013-04-12 14:24:06 +03:00
Chad Austin
68845c447d
fix a syntax error
2013-04-12 14:24:05 +03:00
Chad Austin
7d1614a3ee
simplify embind a bit and checkpoint progress towards external constructors
2013-04-12 14:24:03 +03:00
Bill Welden
88e9806813
Change register_smart_ptr to smart_ptr.
2013-04-12 14:24:02 +03:00
Chad Austin
dd618d24fc
implement an api for allowing JS subclasses of C++ interfaces
2013-04-12 14:23:59 +03:00
Bill Welden
51dfc764bd
Fix a couple of merge issues bringing down the lastest emscripten.
2013-04-12 14:23:57 +03:00
Chad Austin
771ee9e921
Fix a bunch of compiler warnings
2013-04-12 14:23:56 +03:00
Chad Austin
aef932e3a9
Bring back EMSCRIPTEN_KEEPALIVE
2013-04-12 14:23:55 +03:00
Chad Austin
848c186df3
Fix cxa_demangle compile errors
2013-04-12 14:23:53 +03:00
Chad Austin
70aebcde9e
EMSCRIPTEN_KEEPALIVE has been removed
2013-04-12 14:23:52 +03:00
Todd Lee
4fa56f7967
move vecFromJSArray from bind.h to val.h to make it unnecessary to include bind.h
2013-04-12 14:23:50 +03:00
Todd Lee
62b9f6a00f
header dependency fix
2013-04-12 14:23:49 +03:00
Andy Friesen
3b6ea45565
emscripten::internal::optional is now copyable.
...
Fix JSInterface::JSInterface copy constructor to take a const&
2013-04-12 14:23:47 +03:00
Bill Welden
c42eb7377e
Removed explicit cast capability from bindings.
2013-04-12 14:23:43 +03:00
Bill Welden
40ad51a5c8
Revert "register_smart_ptr changed to .shared_ptr (mod to class definition) -- shared_ptr (outside of class definition) is still allowed"
...
This reverts commit c38bb38e9d6393dfacb4afb0e9ba80ce42aee965.
2013-04-12 14:23:41 +03:00
Bill Welden
e5fca2885b
register_smart_ptr changed to .shared_ptr (mod to class definition) -- shared_ptr (outside of class definition) is still allowed
...
shared pointers passed by reference can be modified by the called code -- the change is now reflected at the Javascript calling level
other minor clean-up and small syntactic changes
2013-04-12 14:23:37 +03:00
Chad Austin
ba7a7200ec
Document operators that are not exposed
2013-04-12 14:23:34 +03:00
Chad Austin
50e05c30bf
Introduce val::new_ for constructor invocation
2013-04-12 14:23:30 +03:00
Chad Austin
bacb23ed1a
Kill eval_global_method: it's replaced with more primitives
2013-04-12 14:23:28 +03:00
Chad Austin
09bfd969bd
after merge we need to fix hasOwnProperty to use []
2013-04-12 14:23:27 +03:00
Chad Austin
066540930e
Switch from val::get to val[]
2013-04-12 14:23:25 +03:00
Chad Austin
661e70cb38
simplify emscripten::val set and get
2013-04-12 14:23:24 +03:00
Chad Austin
2b173301ef
Simplify emscripten::val a bit, reducing it closer to its primitive operations.
2013-04-12 14:23:18 +03:00
Bill Welden
6c56bdda8d
It is now possible to access base class properties and methods from a derived class (multiple inheritance not yet supported).
2013-04-12 14:23:11 +03:00
Chad Austin
c5b8e64a0b
bring emscripten::val closer to the set of primitive operations provided by JS on values
2013-04-12 14:23:08 +03:00
Bill Welden
d0969fc651
o Temporary shared pointers created to hold upcast argument values now share ownership with the original pointer.
...
o New test cases for edge cases.
o Other minor clean-up.
2013-04-12 14:23:06 +03:00
Bill Welden
cfb3df1b48
Revert "Revert "Auto upcast of pointer parameters to C++ routines.""
...
This reverts commit 07e0daa5aab716b38acf9041a8baec3816976579.
2013-04-12 14:23:01 +03:00
Bill Welden
84b49c917c
Revert "Auto upcast of pointer parameters to C++ routines."
...
This reverts commit 64cc5c47bed294d5efa2433655552530c0242503.
2013-04-12 14:23:00 +03:00
Bill Welden
cd535236f6
Auto upcast of pointer parameters to C++ routines.
2013-04-12 14:22:56 +03:00
Todd Lee
cd3be4e930
clean-up old interface binding implementation
2013-04-12 14:22:54 +03:00
mey
32ccee42ba
Adding a register map function, fixing some errors in array access functions and invokers.
2013-04-12 14:22:51 +03:00
Bill Welden
eac098fc24
Major re-factoring for auto downcasting
2013-04-12 14:22:49 +03:00
Bill Welden
d069ed4142
clear distinction between raw (C++) and cooked (Javascript class instances) types.
2013-04-12 14:22:47 +03:00
Bill Welden
2308f2a5b1
More work on auto downcasting.
2013-04-12 14:22:43 +03:00
jinsuck
ea98beba74
remove meaningless casting back and forth
2013-04-12 14:22:42 +03:00
jinsuck
77f2b4588b
add a method to conveniently clone to shared pointer of wrapper
2013-04-12 14:22:41 +03:00
jinsuck
40773165f4
add const to a function in val
2013-04-12 14:22:38 +03:00
Todd Lee
0e3ca9c9d6
add ability for descendent to clone interface
2013-04-12 14:22:37 +03:00
jinsuck
a7733270b0
add const to val
2013-04-12 14:22:35 +03:00
Todd Lee
eab7bc729e
remove unnecessary code
2013-04-12 14:22:34 +03:00
Bill Welden
50ba3a6ff9
Benchmark work on pointer casting.
2013-04-12 14:22:33 +03:00
mey
8929970461
Removing unused vector binding code that was missed during previous vector refactorings.
2013-04-12 14:22:31 +03:00
jinsuck
4f143f4638
Revert "remove an unused method"
...
This reverts commit 7300ba73d3004b8d5c69bd8e3dfbc971c3147ad8.
2013-04-12 14:22:30 +03:00
jinsuck
a668fe09c4
remove an unused method
2013-04-12 14:22:28 +03:00
Bill Welden
77dd6c9e83
First fully functional automatic downcasting implementation.
2013-04-12 14:22:26 +03:00
Bill Welden
5fba40c9d8
Forward slashes!
2013-04-12 14:22:24 +03:00
Bill Welden
119ab2f1c4
Better error reporting
...
Fixed demangling routine and added it to RTL
New __typeName method to retrieve char* type name from type info
2013-04-12 14:22:23 +03:00
Bill Welden
03d90a32db
More work toward dynamic downcasting of pointers.
2013-04-12 14:22:20 +03:00
mey
1276f9f5b7
Some additional clean up.
2013-04-12 14:22:19 +03:00
mey
c9eb75d64a
adding function to convert JS array to vector.
2013-04-12 14:22:18 +03:00
mey
b5d84da03b
Removing ability to return by reference: dangerous.
2013-04-12 14:22:16 +03:00
mey
15603bbafc
Switching vector class_ instead of bound as an explicit type.
2013-04-12 14:22:15 +03:00
jinsuck
026a4d49e4
support creating val with null (needed for sending null parameter to a
...
WebGL function)
2013-04-12 14:22:14 +03:00
Todd Lee
73d2de4105
use simpler way to get length of an array
2013-04-12 14:22:12 +03:00
jinsuck
88b63143fa
Upgrade libcxx from 11-month-ago version to the latest. The new version has memory
...
leak fixed in the weak_ptr. Note: to make this compile, I made two
modifications (actually copied from the previous version) --
system/include/libcxx/__locale line 28 and system/include/libcxx/locale
line 229.
2013-04-12 14:22:11 +03:00
Todd Lee
d161fccc9b
added two utility functions to emval.
...
- check if a given key exists.
- return length of an array.
2013-04-12 14:22:09 +03:00
Bill Welden
1b9928686e
Automatic downcasting of function return values (first cut -- multiple inheritance still not supported).
2013-04-12 14:22:08 +03:00
Bill Welden
ae311d2e8d
Allow raw pointer return values (requires allow_raw_pointer<ret_val>)
2013-04-12 14:22:04 +03:00
Todd Lee
87b760c334
Add support for std::vector.
2013-04-12 14:22:03 +03:00
Chad Austin
8b7abef9db
Returning an empty shared_ptr returns null to JavaScript. Similarly, passing null into a shared_ptr creates an empty shared_ptr.
2013-04-12 14:21:58 +03:00
Bill Welden
338d59e81e
More files for upcast/downcast commit.
2013-04-12 14:21:57 +03:00
mey
e237bfd79d
Removing Functor as a specific type; folding operator call into the class definition.
2013-04-12 14:21:54 +03:00
jinsuck
0d745fa116
1) add a method to run global javascript function on val 2) fix a bug to
...
return val from interface wrapper
2013-04-12 14:21:53 +03:00
jinsuck
778b8eb983
add a syntactic sugar to for cloning to a shared pointer of interface
...
wrapper
2013-04-12 14:21:51 +03:00
jinsuck
2c34b6dc6c
Allow constructing interface wrapper from existing interface object
2013-04-12 14:21:50 +03:00
mey
01212260c2
Merging.
2013-04-12 14:21:46 +03:00
mey
d622aa9cab
Exposing std::function to javascript.
2013-04-12 14:21:45 +03:00
Todd Lee
6326240227
This enables passing smart ptr as an element of val.
2013-04-12 14:21:43 +03:00
Llorens Marti Garcia
d90ef85c03
Fix on EnumBindingType
2013-04-12 14:21:42 +03:00
Todd Lee
3c5dead674
Add support for std::vector.
2013-04-12 14:21:41 +03:00
Chad Austin
565823a14a
Returning an empty shared_ptr returns null to JavaScript. Similarly, passing null into a shared_ptr creates an empty shared_ptr.
2013-04-12 14:21:39 +03:00
Chad Austin
848bdefa4e
std::string's WireType::destroy should be free(), not delete.
2013-04-12 14:21:38 +03:00
jinsuck
ebbe879255
to get string from emval
2013-04-12 14:21:36 +03:00
Chad Austin
8691fb1726
Allow multiple pointer arguments and allow multiple functions taking the same raw pointer type
2013-04-12 14:21:35 +03:00
Chad Austin
6014feed71
Add support for raw pointers to embind
2013-04-12 14:21:34 +03:00
Chad Austin
eb5226e16c
Class static methods were downright broken.
2013-04-12 14:21:29 +03:00
Chad Austin
3703d2b5cd
Checkpoint work towards exposing call policies for raw pointers.
2013-04-12 14:21:28 +03:00
Chad Austin
df6ba03eed
Fix several ownership/lifetime bugs in argument wire types
2013-04-12 14:21:22 +03:00
Chad Austin
1c0c7be7aa
Some minor generated code size reductions.
2013-04-12 14:21:21 +03:00
Todd Lee
f91f1ddf37
removed duplicate code / unnecessary code
2013-04-12 14:21:20 +03:00
Todd Lee
d0bf1b0aea
Handle shared_ptr correctly.(keep underlying pointer point to the same address)
...
There was some global variable dependency. These bleed thru tests and affected test result. Adding a way to reset this state.
2013-04-12 14:21:18 +03:00
mey
681ea9fc51
Fixing some tabs and removing some duplication in smart ptr embind.
2013-04-12 14:21:17 +03:00
Chad Austin
60bae3faed
Some simplifications and optimizations to smart pointer support
2013-04-12 14:21:15 +03:00
mey
db4baa7a70
Exposing std::shared_ptr<T> to javascript.
2013-04-12 14:21:14 +03:00
mey
a20c654c1f
Supporting returning std::unique_ptr from C++ to javascript.
2013-04-12 14:21:12 +03:00
Arlo Breault
b2a132cd66
consistent
2013-04-09 17:58:40 -07:00
Arlo Breault
294bdda3b3
implement setgroups
2013-04-09 17:53:10 -07:00
Alon Zakai
eb50cbdde5
Merge pull request #1036 from arlolra/eai
...
Error codes
2013-04-08 19:25:38 -07:00
Arlo Breault
8e9e1f279b
include arpa/inet.h in netinet/in.h
2013-04-08 17:21:42 -07:00
Arlo Breault
ecaaf7a499
combine netdb.h
2013-04-08 17:20:08 -07:00
Arlo Breault
166cba0f6b
pf_inet6
2013-04-05 09:05:17 -07:00
Arlo Breault
758d18bdbd
Error codes.
2013-04-05 08:50:34 -07:00
Éloi Rivard
656bba1da1
* Added glfw headers and testcases.
2013-04-04 11:17:36 +02:00
Alon Zakai
00c2e03551
Merge pull request #1009 from waywardmonkeys/another-libcxx-update
...
Another libcxx update
2013-04-01 16:01:04 -07:00
Alon Zakai
e4fec66245
fix resource.h for C++ usage
2013-03-31 17:39:36 -07:00
Alon Zakai
b9d076fda6
headers fix; fixes #1013
2013-03-30 19:46:57 -07:00
Bruce Mitchener
09233ff934
Update symbols.
2013-03-29 16:39:38 +07:00
Bruce Mitchener
fe73520cbf
Update libcxx to work with emscripten.
2013-03-29 16:37:19 +07:00
Bruce Mitchener
aa0108c75e
Update to r178253 from March 29, 2013.
2013-03-29 16:19:55 +07:00
Alon Zakai
5cedd415bd
Merge pull request #993 from waywardmonkeys/reinstate-attributes
...
Re-instate _ATTRIBUTE() usages.
2013-03-25 17:36:26 -07:00
Alon Zakai
8fd44ea267
Merge pull request #989 from waywardmonkeys/fix-strtof
...
Don't infinitely recurse in strtof().
2013-03-25 15:53:31 -07:00
Alon Zakai
ad285f60d0
remove symbol removing hack; export all malloc symbols as weak; add test for a case where symbol removing made us not merge llvm constructors properly
2013-03-25 12:58:25 -07:00
Bruce Mitchener
09221ebd18
Get exceptions working as they were before.
...
This no longer uses headers from libcxxabi and
in fact uses libcxxabi a bit less than before.
This no longer lets some new C++11 stuff such as
exception_ptr work as the support for that relies
upon libcxxabi code.
2013-03-25 14:14:22 +07:00
Bruce Mitchener
90338c69f7
Get things working with the new libcxx / libcxxabi.
2013-03-25 00:34:11 +07:00
Bruce Mitchener
85879d9d47
Remove unused makefiles.
2013-03-25 00:34:11 +07:00
Bruce Mitchener
9e185cfabd
update libcxxabi.
2013-03-25 00:34:11 +07:00
Bruce Mitchener
59ff5a6a3c
Update to current libcxx.
...
This doesn't work yet as it needs to be customized for use with
emscripten still.
2013-03-25 00:34:11 +07:00
Bruce Mitchener
bc2c6ba215
Re-instate _ATTRIBUTE() usages.
...
These were broken because the definition of _ATTRIBUTE() from
libcxx was different, so change the libc definition and usage
to match.
Fixes issue #992 .
2013-03-23 12:46:34 +07:00
Bruce Mitchener
ba50e35b5c
Don't infinitely recurse in strtof().
2013-03-22 15:57:03 +07:00
Bruce Mitchener
795a334b3b
Replace broken _CTYPE_* definitions with correct.
...
These aren't currently used, but are used in the updated libcxx
port.
Fixes issues #939 .
2013-03-19 23:08:15 +07:00
Ehsan Akhgari
38a151b96c
Replace OpenAL headers with our own
2013-03-15 11:53:17 -07:00
Ehsan Akhgari
46e1c03ff0
Add OpenAL headers
2013-03-15 11:53:15 -07:00
Alon Zakai
645fcab6d3
Merge pull request #942 from waywardmonkeys/fix-typeof-decls
...
Use less generic names for variables.
2013-03-12 18:31:31 -07:00
Bruce Mitchener
b7fd3b22de
Use less generic names for variables.
...
These are generic enough that in libcxx, they get expanded into
functions which also have variables named the same thing (__x, __y)
and that then leads to a buggy libcxx.
2013-03-12 10:21:02 +07:00
Bruce Mitchener
8204d4ce68
Add missing iso646.h
2013-03-08 15:36:37 +07:00
Xuejie "Rafael" Xiao
d4c9620fb5
Move strtod, strtold, strtof, strtod_l, strtold_l, atof from JS side to libc side, this can fix double precision bug in original strtod implementation.
2013-03-06 23:59:11 -05:00
manuels
6efef45cbf
Add support for getopt/getopt_long
2013-03-05 22:05:11 +01:00
Alon Zakai
5f35f00af3
Merge pull request #908 from waywardmonkeys/fix-typos
...
Fix typos.
2013-03-05 12:42:19 -08:00
Alon Zakai
ae342cbe2e
Merge pull request #909 from waywardmonkeys/fix-stdbool-h
...
Ensure __bool_true_false_are_defined is defined.
2013-03-05 12:41:46 -08:00