| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2020-10-12 | Avoid including `limits.h` and `stdint.h` before `mruby.h`. | Yukihiro "Matz" Matsumoto | |
| They are included from `mruby.h` anyway, and including it ahead can cause some errors regarding `INT32_MAX` etc. with C++ compiler. | |||
| 2020-10-12 | Stop `CXX_ABI` test with VisualC++. | Yukihiro "Matz" Matsumoto | |
| This combination is too hard to support. Difference between C and C++ is too big with VisualC++. GCC and clang are OK. | |||
| 2020-10-12 | Run `rake gensym` on AppVeyor. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add `const` to `irep` structure to place data on ROM. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Invoke `rake gensym` for GitHub action build. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Constify `irep` struct for `Class#new`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add `const` qualifier to generated `Proc` structures. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Should not mark red (i.e. ROM allocated) objects. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add `/std:c++latest` option to VC `CXX_ABI` build. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Do not define `mrb_lstat` unless `S_ISLNK` is defined. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Use `int` instead of `mrb_int` for arena index. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Specify the size of `struct RStringEmbed` array part. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Use `%u` instead of `%d` to dump symbol IDs. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Avoid use of designated initializer for the sake of `cxx_abi`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add casts to silence warnings. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add explicit `gensym` to GitHub Actions. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Clarify the use of `MRB_64BIT` and `MRB_INT64` in `dump.c` and `load.c`. | Yukihiro "Matz" Matsumoto | |
| - `MRB_64BIT`: the size of a pointer is 64 bits - `MRB_INT64`: the size of `mrb_int` is 64 bits | |||
| 2020-10-12 | Fix `dump.c` for `MRB_INT32` env. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Enable NUL (`\0`) again. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Generate C struct from `irep` instead of binary dump. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Generate C source file to represent `mrb_irep` structures. | Yukihiro "Matz" Matsumoto | |
| Type `mrbc -S -B<init> -o<outfile> <rbfiles...>` to generate the C source code that holds compiled `mrb_irep`. Appending the following code to the bottom of the generated code, `mruby` executes the compiled code: ```C int main() { mrb_state *mrb = mrb_open(); struct RProc *p = mrb_proc_new(mrb, &init_irep); mrb_vm_run(mrb, p, mrb_top_self(mrb), 0); mrb_close(mrb); return 0; } ``` Eventually static compile should use this representation, instead of `uint8_t` array that holds `mrb` data, so that we can skip interpreting `mrb` data. | |||
| 2020-10-12 | Scan more symbols from Ruby files by `rake gensym`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Removed alignment pragma from `-B` output from `mrbc`. | Yukihiro "Matz" Matsumoto | |
| We no longer need 4 bytes alignment after we moved to the byte oriented instructions. | |||
| 2020-10-12 | Replace entire `irep->pool`. | Yukihiro "Matz" Matsumoto | |
| Changes: - `pool format is completely replaced - supported types: `STR`, `INT32`, `INT64`, `FLOAT` - `FLOAT` may be replaced by binary representation in the future - insert `NUL` after string literals in `mrb` files - `irep->pool` no longer store values in `mrb_value` - instead it stores in `mrb_pool_value` - less allocation - `mrb_irep` can be stored in ROM | |||
| 2020-10-12 | Rename `struct mrb_locals` to `struct mrb_lvinfo`. | Yukihiro "Matz" Matsumoto | |
| That stands for "local variable information". | |||
| 2020-10-12 | Add `irep` C struct dump from `mrbc` with `-S` option. | Yukihiro "Matz" Matsumoto | |
| But we need more work: - recursive `irep` dump (`irep->reps`) - pool values dump (`irep->pool`) | |||
| 2020-10-12 | Avoid use of designated initializers to generate `irep` struct. | Yukihiro "Matz" Matsumoto | |
| Since it's not supported on VC without `/std:c++latest`. That means it doesn't work for `cxx_api` build on Windows VC. | |||
| 2020-10-12 | Make `call_irep` static. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add `/std:c++latest` to VC option in `build.yml`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Specify new `MRUBY_TARGET` instead of `MRUBY_CONFIG`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Use `static const struct mrb_irep each_irep` to ininitalize `each`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Add `const` modifier to `mrb_irep` for `code_fetch_hook`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Remove remaining `chomp:true` option from `Rakefile`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Stop Rake multitasking on Windows-VC for the time being. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Avoid using `chomp:true` option to `File.readlines`. | Yukihiro "Matz" Matsumoto | |
| The option is not available in the old version of Ruby. | |||
| 2020-10-12 | Stringify non C identifier symbols to stop macro errors by old gcc. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Remove `rake -v` option from GitHub Actions. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Constify `irep` members. | Yukihiro "Matz" Matsumoto | |
| - `pool` - `syms` - `reps` | |||
| 2020-10-12 | Add explicit cast to `DROP_PRECISION` macro in `rational.c`. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Build process updated: | Yukihiro "Matz" Matsumoto | |
| You have to specify `TARGET` to specify a configuration, e.g. ``` rake TARGET=host-debug all test ``` When you port `mruby` to a new configuration: 1. copy an existing configuration under `target` directory 2. modify the new configuration file 3. build using the new configuration 4. send PR if you please | |||
| 2020-10-12 | Refine `.travis.yml` | KOBAYASHI Shuji | |
| * Disable automatic update and clean up on `brew install` (install time 160 sec -> 5 sec). * Avoid using deprecated keys. | |||
| 2020-10-12 | Removed Bison related settings from `.travis.yml` and `appveyor.yml` | KOBAYASHI Shuji | |
| 2020-10-12 | Revert part of "Start GitHub Actions" (4ce3997c) | KOBAYASHI Shuji | |
| Because some changes have been overridden. | |||
| 2020-10-12 | Add `y.tab.c` to remove Bison from build dependencies; ref 4ce3997c | KOBAYASHI Shuji | |
| I sometimes see Bison related problems in setting up build environments. Therefore to remove Bison from build time dependencies, add `y.tab.c` generated by Bison to the repository. The reduction of dependency at build time also reduces the labor and time for setup and installation in CI. In addition, a path in `#line` directive is converted to a relative path so that its path is constant regardless of development environments. | |||
| 2020-10-12 | Use the newer `bison` on GitHub actions macOS; ref #4903 | Yukihiro "Matz" Matsumoto | |
| `Windows-MinGW` and `Windows-VC` also requires updates. | |||
| 2020-10-12 | Start GitHub Actions; close #4903 | Takeshi Watanabe | |
| 2020-10-12 | Change the arguments of following implicit conversion functions: | Yukihiro "Matz" Matsumoto | |
| - `mrb_convert_type` - `mrb_check_convert_type` Those function no longer take `tname` string representation of desired type, and take method symbols instead of `const char*` names. This is incompatible change. I hope no third-party gems use those functions. | |||
| 2020-10-12 | Use functions that take symbols to reduce string litrals in C. | Yukihiro "Matz" Matsumoto | |
| 2020-10-12 | Provide functions that take symbols instead of `const char*`. | Yukihiro "Matz" Matsumoto | |
| - mrb_define_class_id - mrb_define_module_id - mrb_define_method_id - mrb_define_singleton_method_id - mrb_define_module_function_id - mrb_define_const_id - mrb_undef_method_id - mrb_undef_class_method_id - mrb_class_defined_id - mrb_class_get_id - mrb_class_defined_under_id - mrb_class_get_under_id - mrb_module_get_id - mrb_module_get_under_id - mrb_define_class_under_id - mrb_define_module_under_id - mrb_exc_get_id | |||
| 2020-10-12 | Use `mrb->eStandardError` instead of `mrb_exc_get()`. | Yukihiro "Matz" Matsumoto | |
