Commit Graph

502 Commits

Author SHA1 Message Date
Paolo Bosetti 391f8dcef0 Merge branch 'Xcode' of github.com:pbosetti/mruby into XCode 2012-05-23 09:12:39 -07:00
Yukihiro Matsumoto ad9e841c53 made mrb_get_args() better (optinal args, type checks); close #173 #176 2012-05-24 01:09:36 +09:00
Paolo Bosetti e634ca18ed Created Xcode 4 project, using the make target to build the tools, and with a native Xcode target to build a hello world example. 2012-05-22 22:34:16 -07:00
Yukihiro Matsumoto 4f012f578f remove warning for open paren after space 2012-05-23 12:59:46 +09:00
Yukihiro Matsumoto d26100d529 allow empty paren as a valid expr 2012-05-23 12:05:30 +09:00
Yukihiro Matsumoto 52b2d092d3 test t/*.rb spacing fix 2012-05-23 12:00:49 +09:00
Yukihiro Matsumoto 7ee8018d60 add dependency from keywords to lex.def 2012-05-23 11:47:19 +09:00
Yukihiro "Matz" Matsumoto 91b4929697 Merge pull request #183 from thecodeshop/cmake-miss
Add CMake support authorship miss
2012-05-22 18:31:02 -07:00
Jon 66a8890691 Add CMake support authorship miss 2012-05-22 15:16:54 -04:00
Yukihiro Matsumoto 4523bee953 cast style consistency 2012-05-23 03:31:55 +09:00
Yukihiro Matsumoto 714b358bb2 add CMakeFiles and CMakeCache.txt to .gitignore 2012-05-23 03:11:31 +09:00
Yukihiro "Matz" Matsumoto 9a64598121 Merge pull request #180 from mitchblank/master
call mrb_close() in tools and test programs
2012-05-22 11:01:29 -07:00
Yukihiro Matsumoto 55920a7846 update the desciption regarding comforming to ISO, and provided tools 2012-05-23 02:46:30 +09:00
Yukihiro Matsumoto df25301d80 Merge branch 'master' of github.com:mruby/mruby 2012-05-23 02:20:13 +09:00
Yukihiro "Matz" Matsumoto 0dc183b8f4 Merge pull request #178 from monaka/pr-avoid-redundant-redeclaration-20110522
Avoid warning: redundant redeclaration of ‘OnigEncDefaultCharEncoding’
2012-05-22 10:19:31 -07:00
Yukihiro Matsumoto f44acf7bf8 explicit normalization -0.0 to 0.0 2012-05-23 02:18:40 +09:00
Yukihiro "Matz" Matsumoto 618697cbb6 Merge pull request #182 from thecodeshop/cmake
Add CMake build infrastructure
2012-05-22 10:13:08 -07:00
Jon 9f89da6eef Add native and cross compiling CMake build support 2012-05-22 10:50:28 -04:00
Beoran b5dcb7128d First cmake build system. Works on Linux. 2012-05-22 09:11:13 -04:00
Yukihiro Matsumoto 1eb02552ea remove unused prototype from hash.h 2012-05-22 18:51:22 +09:00
Yukihiro Matsumoto c9930d1c32 remove unused MT code from hash.h 2012-05-22 18:49:30 +09:00
Yukihiro Matsumoto 6e67d83c95 should mark iv from MRB_TT_DATA 2012-05-22 18:36:52 +09:00
Mitchell Blank Jr d1cd10421f change example code to do mrb_close()
I was hoping this would cause valgrind to complain less, but there is still
a lot of memory leaked (does mrb_close() actually free all of the managed
blocks?)  Anyway this helps somewhat and is good practice
2012-05-22 01:03:54 -07:00
Mitchell Blank Jr 8c084b9645 Merge remote-tracking branch 'upstream/master'
Conflicts:
	src/time.c
2012-05-22 01:02:49 -07:00
Masaki Muranaka a3f9ee0b65 Avoid warning: redundant redeclaration of ‘OnigEncDefaultCharEncoding’ 2012-05-22 13:42:13 +09:00
Yukihiro Matsumoto abacbf6672 always use value.i for MRB_TT_FALSE 2012-05-22 10:24:37 +09:00
Yukihiro Matsumoto 826386a13a use mrb_int for struct tm fractions 2012-05-21 17:16:33 +09:00
Yukihiro Matsumoto 1dbfc39997 use mrb's allocator; thanks to @mitchblank 2012-05-21 17:11:38 +09:00
Mitchell Blank Jr dd5dd821aa Use integer constants to initialize mrb_int
As per monaka's comment here...
  https://github.com/mruby/mruby/pull/175
...changing these initializations of mrb_int values to use integer
constants
2012-05-20 20:38:04 -07:00
Mitchell Blank Jr 2120e5cbd6 make mrb_time_local() arguments consistent
* mrb_time_gm() uses mrb_int
* Same for mrb_time_initialize()
* The parameters to time_mktime() are mrb_int, and that's what these values are passed to

So I don't see why mrb_time_local() works on mrb_float instead.  Lets make
it consistent with the other methods defined in time.c
2012-05-20 20:13:31 -07:00
Yukihiro Matsumoto 21bd5d7924 print description on exceptions 2012-05-21 10:39:29 +09:00
Yukihiro Matsumoto 84a2fb102c wrong stack position in rescue clause 2012-05-21 10:25:26 +09:00
Yukihiro "Matz" Matsumoto ebfebfc365 Merge pull request #171 from mitchblank/cplusplus
More C++ compilability work: mrb_obj_alloc void* conversions
2012-05-20 10:07:41 -07:00
Mitchell Blank Jr 9e336b00e5 More C++ compilability work: mrb_obj_alloc void* conversions
One of the biggest set of changes needed to make C++ compile, is that you
can't autoconvert "void*" to a different pointer type without a cast (you
can of course, convert pointers *to* "void*"!)

For the first part, convert the users of "mrb_obj_alloc".  Since it has
to return something, make it RBasic* (that's what mrb_obj_alloc() is
operating on anyway).  This way, even in C you'll get a warning if you
don't cast it.

For places where there are a lot of similar calls to mrb_obj_alloc(),
this can be easily hidden through a macro.  I did this in string.c:
    #define mrb_obj_alloc_string(mrb) ((struct RString *) mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))

I also updated the mrb_object() macro to also return a RBasic* -- my
previous commit changed that from "void*" -> "RObject*", but I figure
it should be consistent with mrb_obj_alloc()
2012-05-20 09:43:14 -07:00
Yukihiro Matsumoto ec8f97d2a6 add "all" to test dependency 2012-05-20 23:01:53 +09:00
Yukihiro Matsumoto 54a921ba1b ANSIfy name2ctype.h 2012-05-20 22:55:52 +09:00
Yukihiro Matsumoto c3fc0c1929 'not (2)' should not raise warning 2012-05-20 22:47:00 +09:00
Yukihiro Matsumoto 0bba67626e waring refactoring; print line number 2012-05-20 22:46:10 +09:00
Yukihiro "Matz" Matsumoto ac31b58fe8 Merge pull request #169 from mitchblank/cplusplus
Part 1 of C++ compilability
2012-05-20 06:09:31 -07:00
Yukihiro "Matz" Matsumoto 89865740e4 Merge pull request #168 from k-tsj/add-cast
Add cast to remove "cast from pointer to integer of different size" warning
2012-05-20 06:08:12 -07:00
Yukihiro Matsumoto ee72000161 use mrb_assoc_new to generate a key-value pair 2012-05-20 22:05:49 +09:00
Yukihiro "Matz" Matsumoto 64823cbd35 Merge pull request #167 from bovi/fix-hash-shift
Fix Hash#shift return value from Hash to Array
2012-05-20 06:03:46 -07:00
Mitchell Blank Jr 606a1665c5 C++ compilability - avoid 'goto' across a variable initialization
C++ is pickier about when a 'goto' can cross a variable being delcared.
The fix is to just add a set of braces to restrict the variable's scope.
Without this, g++ will fail with:

  regcomp.c:3057: error: jump to label 'set_call_attr'
  regcomp.c:3087: error:   from here
  regcomp.c:3041: error:   skips initialization of 'int gnum'
2012-05-20 00:26:49 -07:00
Kazuki Tsujimoto df6f917df8 Fix wrong cast 2012-05-20 16:23:34 +09:00
Mitchell Blank Jr 1ad7a1e3d8 C++ compilability: don't use "node" as both a type and a member
I originally solved this by renaming the "node" type to "node_t",
but Matz didn't like that.  He suggested renaming the member
variable "nd" instead:
  https://github.com/mruby/mruby/pull/144#issuecomment-5743153
2012-05-20 00:19:38 -07:00
Mitchell Blank Jr 42c6b324db C++ compilability -- don't jump across variable initialization
C++ is picker than C about when you can "goto" across a variable being
defined.  The fix is to just minimize the variable's scope inside an
extra set of brackets.

Without this change, g++ has the following errors:

  transcode.c:590: error: jump to label 'resume_label3'
  transcode.c:514: error:   from here
  transcode.c:582: error:   crosses initialization of 'const unsigned char* p'
  transcode.c:2124: error: jump to label 'set_encs'
  transcode.c:2184: error:   from here
  transcode.c:2088: error:   skips initialization of 'const char* err'
  transcode.c:2089: error:   skips initialization of 'size_t error_len'
  transcode.c:2090: error:   skips initialization of 'mrb_value bytes'
  transcode.c:2091: error:   skips initialization of 'mrb_value dumped'
  transcode.c:2092: error:   skips initialization of 'size_t readagain_len'
  transcode.c:2093: error:   skips initialization of 'mrb_value bytes2'
2012-05-20 00:06:49 -07:00
Mitchell Blank Jr 8c752c73e2 "volatile" no longer needed here
See Matz's comment here:
  https://github.com/mruby/mruby/pull/144#issuecomment-5754054
2012-05-19 23:44:43 -07:00
Mitchell Blank Jr d9529f198d fix mrb_gc_mark_ht_size() and mrb_gc_free_ht() types
mrb_gc_mark_ht_size() and mrb_gc_free_ht() were declared in gc.h as
taking a "RHash *" argument, but then they were defined in hash.c
as taking a "RClass *"  Get these in sync.
2012-05-19 23:33:01 -07:00
Mitchell Blank Jr e3abf33384 C++ compilability: "not" is a C++ keyword, avoid it
see http://en.cppreference.com/w/cpp/language/operator_alternative
2012-05-19 23:28:40 -07:00
Mitchell Blank Jr 365cc40ac5 C++ compilabilty -- "new" is a C++ keyword, avoid it 2012-05-19 23:20:44 -07:00