aboutsummaryrefslogtreecommitdiff
path: root/tests/hello_world_loop_malloc.cpp
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-12-16 12:36:12 -0800
committerAlon Zakai <alonzakai@gmail.com>2011-12-16 14:55:17 -0800
commit086526150c8dc53800a63af9571c62410a161cc6 (patch)
tree8bb70181e105dfda3177cb9ae0cb51272b9bcbfd /tests/hello_world_loop_malloc.cpp
parentac78c51c1b9a4b396e28be25b46001672bfae8e5 (diff)
completely automatic malloc inclusion in emcc
Diffstat (limited to 'tests/hello_world_loop_malloc.cpp')
-rw-r--r--tests/hello_world_loop_malloc.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/hello_world_loop_malloc.cpp b/tests/hello_world_loop_malloc.cpp
new file mode 100644
index 00000000..b9361834
--- /dev/null
+++ b/tests/hello_world_loop_malloc.cpp
@@ -0,0 +1,21 @@
+#include<stdio.h>
+#include<string.h>
+#include<stdlib.h>
+
+extern "C" {
+ void dump(char *s) {
+ printf("%s\n", s);
+ }
+}
+
+int main() {
+ char *original = (char*)"h e l l o , w o r l d ! ";
+ char *copy = (char*)malloc(strlen(original));
+ for (int i = 0; i < strlen(original); i += 2) {
+ copy[i/2] = original[i];
+ }
+ copy[strlen(copy)+1] = (int)&original; // force original to be on the stack
+ dump(copy);
+ return 1;
+}
+