summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2021-01-11 09:21:07 +0900
committerKOBAYASHI Shuji <[email protected]>2021-01-11 09:21:07 +0900
commit90b53f4c29dd845140175943263b9c67995324c4 (patch)
treeacc4aa53b32ccffab96c1747f41081fc482ba61a /src
parent3deb3a7aac0136d08a20a31c5d44f6b9a3fe751f (diff)
downloadmruby-90b53f4c29dd845140175943263b9c67995324c4.tar.gz
mruby-90b53f4c29dd845140175943263b9c67995324c4.zip
Avoid including `presym.inc` in existing header files
Addressed an issue where existing programs linking `libmruby.a` could only be built by adding `<build-dir>/include` to compiler's include path.
Diffstat (limited to 'src')
-rw-r--r--src/array.c2
-rw-r--r--src/backtrace.c1
-rw-r--r--src/class.c1
-rw-r--r--src/dump.c5
-rw-r--r--src/error.c1
-rw-r--r--src/gc.c1
-rw-r--r--src/hash.c3
-rw-r--r--src/kernel.c1
-rw-r--r--src/numeric.c1
-rw-r--r--src/object.c1
-rw-r--r--src/print.c1
-rw-r--r--src/proc.c1
-rw-r--r--src/range.c1
-rw-r--r--src/string.c1
-rw-r--r--src/symbol.c1
-rw-r--r--src/variable.c1
-rw-r--r--src/vm.c1
17 files changed, 22 insertions, 2 deletions
diff --git a/src/array.c b/src/array.c
index ca00b6f3e..a66ff8183 100644
--- a/src/array.c
+++ b/src/array.c
@@ -10,7 +10,7 @@
#include <mruby/string.h>
#include <mruby/range.h>
#include <mruby/proc.h>
-#include <mruby/opcode.h>
+#include <mruby/presym.h>
#include "value_array.h"
#define ARY_DEFAULT_LEN 4
diff --git a/src/backtrace.c b/src/backtrace.c
index 1006f2f86..8b42b1e0e 100644
--- a/src/backtrace.c
+++ b/src/backtrace.c
@@ -14,6 +14,7 @@
#include <mruby/error.h>
#include <mruby/numeric.h>
#include <mruby/data.h>
+#include <mruby/presym.h>
struct backtrace_location {
int32_t lineno;
diff --git a/src/class.c b/src/class.c
index 85a26d343..7533ac2b0 100644
--- a/src/class.c
+++ b/src/class.c
@@ -17,6 +17,7 @@
#include <mruby/data.h>
#include <mruby/istruct.h>
#include <mruby/opcode.h>
+#include <mruby/presym.h>
union mt_ptr {
struct RProc *proc;
diff --git a/src/dump.c b/src/dump.c
index 79908b47f..45900cecd 100644
--- a/src/dump.c
+++ b/src/dump.c
@@ -1222,7 +1222,10 @@ mrb_dump_irep_cstruct(mrb_state *mrb, const mrb_irep *irep, uint8_t flags, FILE
if (fp == NULL || initname == NULL || initname[0] == '\0') {
return MRB_DUMP_INVALID_ARGUMENT;
}
- if (fprintf(fp, "#include <mruby.h>\n" "#include <mruby/proc.h>\n\n") < 0) {
+ if (fprintf(fp, "#include <mruby.h>\n"
+ "#include <mruby/proc.h>\n"
+ "#include <mruby/presym.h>\n"
+ "\n") < 0) {
return MRB_DUMP_WRITE_FAULT;
}
fputs("#define mrb_BRACED(...) {__VA_ARGS__}\n", fp);
diff --git a/src/error.c b/src/error.c
index 4f7ca8641..d2f1c27ac 100644
--- a/src/error.c
+++ b/src/error.c
@@ -16,6 +16,7 @@
#include <mruby/error.h>
#include <mruby/class.h>
#include <mruby/throw.h>
+#include <mruby/presym.h>
MRB_API mrb_value
mrb_exc_new(mrb_state *mrb, struct RClass *c, const char *ptr, size_t len)
diff --git a/src/gc.c b/src/gc.c
index eeabc3bf9..7d21f4330 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -22,6 +22,7 @@
#include <mruby/gc.h>
#include <mruby/error.h>
#include <mruby/throw.h>
+#include <mruby/presym.h>
/*
= Tri-color Incremental Garbage Collection
diff --git a/src/hash.c b/src/hash.c
index fe14865cf..714601b02 100644
--- a/src/hash.c
+++ b/src/hash.c
@@ -11,6 +11,7 @@
#include <mruby/hash.h>
#include <mruby/string.h>
#include <mruby/variable.h>
+#include <mruby/presym.h>
/*
* === Glossary
@@ -254,6 +255,8 @@ HT_ASSERT_SAFE_READ(ea_capa);
#define h_ar_p(h) (!h_ht_p(h))
#define h_ar_on(h) h_ht_off(h)
#define lesser(a, b) ((a) < (b) ? (a) : (b))
+#define RHASH_IFNONE(hash) mrb_iv_get(mrb, (hash), MRB_SYM(ifnone))
+#define RHASH_PROCDEFAULT(hash) RHASH_IFNONE(hash)
static uint32_t ib_upper_bound_for(uint32_t capa);
static uint32_t ib_bit_to_capa(uint32_t bit);
diff --git a/src/kernel.c b/src/kernel.c
index b98e52c42..769ce58c9 100644
--- a/src/kernel.c
+++ b/src/kernel.c
@@ -13,6 +13,7 @@
#include <mruby/variable.h>
#include <mruby/error.h>
#include <mruby/istruct.h>
+#include <mruby/presym.h>
MRB_API mrb_bool
mrb_func_basic_p(mrb_state *mrb, mrb_value obj, mrb_sym mid, mrb_func_t func)
diff --git a/src/numeric.c b/src/numeric.c
index 117f447e5..5e6f1b524 100644
--- a/src/numeric.c
+++ b/src/numeric.c
@@ -17,6 +17,7 @@
#include <mruby/numeric.h>
#include <mruby/string.h>
#include <mruby/class.h>
+#include <mruby/presym.h>
#ifndef MRB_NO_FLOAT
#ifdef MRB_USE_FLOAT32
diff --git a/src/object.c b/src/object.c
index bf4d743ff..d6474ae97 100644
--- a/src/object.c
+++ b/src/object.c
@@ -9,6 +9,7 @@
#include <mruby/numeric.h>
#include <mruby/string.h>
#include <mruby/class.h>
+#include <mruby/presym.h>
MRB_API mrb_bool
mrb_obj_eq(mrb_state *mrb, mrb_value v1, mrb_value v2)
diff --git a/src/print.c b/src/print.c
index 68b2aad91..607eb9d1f 100644
--- a/src/print.c
+++ b/src/print.c
@@ -8,6 +8,7 @@
#include <mruby/string.h>
#include <mruby/variable.h>
#include <mruby/error.h>
+#include <mruby/presym.h>
#include <string.h>
#ifndef MRB_NO_STDIO
diff --git a/src/proc.c b/src/proc.c
index 68ca941c3..e09fcb5b7 100644
--- a/src/proc.c
+++ b/src/proc.c
@@ -9,6 +9,7 @@
#include <mruby/proc.h>
#include <mruby/opcode.h>
#include <mruby/data.h>
+#include <mruby/presym.h>
static const mrb_code call_iseq[] = {
OP_CALL,
diff --git a/src/range.c b/src/range.c
index f3f02a010..a109257c0 100644
--- a/src/range.c
+++ b/src/range.c
@@ -9,6 +9,7 @@
#include <mruby/range.h>
#include <mruby/string.h>
#include <mruby/array.h>
+#include <mruby/presym.h>
#define RANGE_INITIALIZED_MASK 1
#define RANGE_INITIALIZED(p) ((p)->flags |= RANGE_INITIALIZED_MASK)
diff --git a/src/string.c b/src/string.c
index 83401b3db..eb4136b10 100644
--- a/src/string.c
+++ b/src/string.c
@@ -22,6 +22,7 @@
#include <mruby/range.h>
#include <mruby/string.h>
#include <mruby/numeric.h>
+#include <mruby/presym.h>
typedef struct mrb_shared_string {
int refcnt;
diff --git a/src/symbol.c b/src/symbol.c
index 58decc1f1..76e2abec4 100644
--- a/src/symbol.c
+++ b/src/symbol.c
@@ -11,6 +11,7 @@
#include <mruby/string.h>
#include <mruby/dump.h>
#include <mruby/class.h>
+#include <mruby/presym.h>
#ifndef MRB_NO_PRESYM
diff --git a/src/variable.c b/src/variable.c
index 9343a2bf5..d5a7d90c7 100644
--- a/src/variable.c
+++ b/src/variable.c
@@ -10,6 +10,7 @@
#include <mruby/proc.h>
#include <mruby/string.h>
#include <mruby/variable.h>
+#include <mruby/presym.h>
struct iv_elem {
mrb_sym key;
diff --git a/src/vm.c b/src/vm.c
index 57b38ee39..c0544d4ad 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -24,6 +24,7 @@
#include "value_array.h"
#include <mruby/throw.h>
#include <mruby/dump.h>
+#include <mruby/presym.h>
#ifdef MRB_NO_STDIO
#if defined(__cplusplus)