зеркало из https://github.com/github/ruby.git
* README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
lex.c.blt, keywords, load.c, thread.c: more ANSI'ize. a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-dev:32725] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
5f0b8afb97
Коммит
3410fd6812
|
@ -1,3 +1,10 @@
|
|||
Tue Dec 25 13:13:09 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
|
||||
|
||||
* README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
|
||||
lex.c.blt, keywords, load.c, thread.c: more ANSI'ize.
|
||||
a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
|
||||
in [ruby-dev:32725]
|
||||
|
||||
Tue Dec 25 13:07:56 2007 Koichi Sasada <ko1@atdot.net>
|
||||
|
||||
* vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
|
||||
|
|
|
@ -107,16 +107,16 @@ FIXNUM
|
|||
発生する).同様にチェック無しで使える変換マクロはdoubleを
|
||||
取り出す「NUM2DBL()」があります。
|
||||
|
||||
char* を取り出す場合、version 1.6 以前では「STR2CSTR()」と
|
||||
いうマクロを使っていましたが、これは to_str() による暗黙の
|
||||
型変換結果が GC される可能性があるため、version 1.7 以降では
|
||||
obsolete となり、代わりに StringValue() と StringValuePtr()
|
||||
を使う事を推奨しています。StringValue(var) は var が String
|
||||
であれば何もせず、そうでなければ var を var.to_str() の結果に
|
||||
置き換えるマクロ、StringValuePtr(var) は同様に var を置き換え
|
||||
てから var の文字列表現に対する char* を返すマクロです。var の
|
||||
内容を直接置き換える処理が入るので、var は lvalue である必要が
|
||||
あります。
|
||||
char* を取り出す場合、version 1.6 以前では「STR2CSTR()」とい
|
||||
うマクロを使っていましたが、これは to_str() による暗黙の型変
|
||||
換結果が GC される可能性があるため、version 1.7 以降では
|
||||
obsolete となり、代わりに StringValue() と StringValuePtr()
|
||||
を使う事を推奨しています。StringValue(var) は var が String
|
||||
であれば何もせず、そうでなければ var を var.to_str() の結果
|
||||
に置き換えるマクロ、StringValuePtr(var) は同様に var を置き
|
||||
換えてから var の文字列表現に対する char* を返すマクロです。
|
||||
var の内容を直接置き換える処理が入るので、var は lvalue であ
|
||||
る必要があります。
|
||||
|
||||
それ以外のデータタイプは対応するCの構造体があります.対応す
|
||||
る構造体のあるVALUEはそのままキャスト(型変換)すれば構造体の
|
||||
|
@ -576,7 +576,8 @@ Ruby
|
|||
定義を行います.dbm.cから一部引用します.
|
||||
|
||||
--
|
||||
Init_dbm()
|
||||
void
|
||||
Init_dbm(void)
|
||||
{
|
||||
/* DBMクラスを定義する */
|
||||
cDBM = rb_define_class("DBM", rb_cObject);
|
||||
|
@ -638,8 +639,7 @@ fdbm_delete()
|
|||
|
||||
--
|
||||
static VALUE
|
||||
fdbm_delete(obj, keystr)
|
||||
VALUE obj, keystr;
|
||||
fdbm_delete(VALUE obj, VALUE keystr)
|
||||
{
|
||||
:
|
||||
}
|
||||
|
@ -655,10 +655,7 @@ fdbm_delete(obj, keystr)
|
|||
|
||||
--
|
||||
static VALUE
|
||||
fdbm_s_open(argc, argv, klass)
|
||||
int argc;
|
||||
VALUE *argv;
|
||||
VALUE klass;
|
||||
fdbm_s_open(int argc, VALUE *argv, VALUE klass)
|
||||
{
|
||||
:
|
||||
if (rb_scan_args(argc, argv, "11", &file, &vmode) == 1) {
|
||||
|
@ -687,8 +684,7 @@ Ruby
|
|||
|
||||
--
|
||||
static VALUE
|
||||
fdbm_indexes(obj, args)
|
||||
VALUE obj, args;
|
||||
fdbm_indexes(VALUE obj, VALUE args)
|
||||
{
|
||||
:
|
||||
}
|
||||
|
@ -1049,8 +1045,8 @@ char *rb_id2name(ID id)
|
|||
|
||||
char *rb_class2name(VALUE klass)
|
||||
|
||||
クラスの名前を返す(デバッグ用).クラスが名前を持たない時には,
|
||||
祖先を遡って名前を持つクラスの名前を返す.
|
||||
クラスの名前を返す(デバッグ用).クラスが名前を持たない時に
|
||||
は, 祖先を遡って名前を持つクラスの名前を返す.
|
||||
|
||||
int rb_respond_to(VALUE obj, ID id)
|
||||
|
||||
|
@ -1193,10 +1189,10 @@ find_library(lib, func, path...)
|
|||
|
||||
have_func(func, header)
|
||||
|
||||
ヘッダファイルheaderをインクルードして関数funcの存在をチェッ
|
||||
クする.funcが標準ではリンクされないライブラリ内のものであ
|
||||
る時には先にhave_libraryでそのライブラリをチェックしておく
|
||||
事.関数が存在する時trueを返す.
|
||||
ヘッダファイルheaderをインクルードして関数funcの存在をチェ
|
||||
ックする.funcが標準ではリンクされないライブラリ内のもので
|
||||
ある時には先にhave_libraryでそのライブラリをチェックしてお
|
||||
く事.関数が存在する時trueを返す.
|
||||
|
||||
have_var(var, header)
|
||||
|
||||
|
@ -1247,7 +1243,8 @@ find_executable(command, path)
|
|||
|
||||
with_config(withval[, default=nil])
|
||||
|
||||
コマンドライン上の--with-<withval>で指定されたオプション値を得る.
|
||||
コマンドライン上の--with-<withval>で指定されたオプション値
|
||||
を得る.
|
||||
|
||||
enable_config(config, *defaults)
|
||||
disable_config(config, *defaults)
|
||||
|
@ -1256,8 +1253,9 @@ disable_config(config, *defaults)
|
|||
--disable-<config>で指定された真偽値を得る.
|
||||
--enable-<config>が指定されていた場合はtrue,
|
||||
--disable-<config>が指定されていた場合はfalseを返す.
|
||||
どちらも指定されていない場合は,ブロックつきで呼び出されている場合は
|
||||
*defaultsをyieldした結果,ブロックなしなら*defaultsを返す.
|
||||
どちらも指定されていない場合は,ブロックつきで呼び出されて
|
||||
いる場合は*defaultsをyieldした結果,ブロックなしなら
|
||||
*defaultsを返す.
|
||||
|
||||
dir_config(target[, default_dir])
|
||||
dir_config(target[, default_include, default_lib])
|
||||
|
@ -1266,8 +1264,8 @@ dir_config(target[, default_include, default_lib])
|
|||
--with-<target>-libのいずれかで指定されるディレクトリを
|
||||
$CFLAGS や $LDFLAGS に追加する.--with-<target>-dir=/pathは
|
||||
--with-<target>-include=/path/include --with-<target>-lib=/path/lib
|
||||
と等価である.追加された include ディレクトリと lib ディレクトリの
|
||||
配列を返す. ([include_dir, lib_dir])
|
||||
と等価である.追加された include ディレクトリと lib ディレ
|
||||
クトリの配列を返す. ([include_dir, lib_dir])
|
||||
|
||||
pkg_config(pkg)
|
||||
|
||||
|
|
2
dir.c
2
dir.c
|
@ -922,7 +922,7 @@ sys_warning_1(const char* mesg)
|
|||
|
||||
#define GLOB_VERBOSE (1UL << (sizeof(int) * CHAR_BIT - 1))
|
||||
#define sys_warning(val) \
|
||||
(void)((flags & GLOB_VERBOSE) && rb_protect((VALUE (*)_((VALUE)))sys_warning_1, (VALUE)(val), 0))
|
||||
(void)((flags & GLOB_VERBOSE) && rb_protect((VALUE (*)(VALUE))sys_warning_1, (VALUE)(val), 0))
|
||||
|
||||
#define GLOB_ALLOC(type) (type *)malloc(sizeof(type))
|
||||
#define GLOB_ALLOC_N(type, n) (type *)malloc(sizeof(type) * (n))
|
||||
|
|
10
eval.c
10
eval.c
|
@ -55,10 +55,10 @@ char **rb_origenviron;
|
|||
void rb_clear_trace_func(void);
|
||||
void rb_thread_stop_timer_thread(void);
|
||||
|
||||
void rb_call_inits _((void));
|
||||
void Init_stack _((VALUE *));
|
||||
void Init_heap _((void));
|
||||
void Init_ext _((void));
|
||||
void rb_call_inits(void);
|
||||
void Init_stack(VALUE *);
|
||||
void Init_heap(void);
|
||||
void Init_ext(void);
|
||||
void Init_BareVM(void);
|
||||
|
||||
void
|
||||
|
@ -268,7 +268,7 @@ rb_eval_string(const char *str)
|
|||
VALUE
|
||||
rb_eval_string_protect(const char *str, int *state)
|
||||
{
|
||||
return rb_protect((VALUE (*)_((VALUE)))rb_eval_string, (VALUE)str, state);
|
||||
return rb_protect((VALUE (*)(VALUE))rb_eval_string, (VALUE)str, state);
|
||||
}
|
||||
|
||||
VALUE
|
||||
|
|
|
@ -62,7 +62,7 @@ void *alloca();
|
|||
#endif
|
||||
|
||||
#ifndef HAVE_STRING_H
|
||||
char *strrchr _((const char *, const char));
|
||||
char *strrchr(const char *, const char);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_UNISTD_H
|
||||
|
@ -192,19 +192,19 @@ char *strrchr _((const char *, const char));
|
|||
} \
|
||||
while (0)
|
||||
|
||||
void rb_thread_cleanup _((void));
|
||||
void rb_thread_wait_other_threads _((void));
|
||||
void rb_thread_cleanup(void);
|
||||
void rb_thread_wait_other_threads(void);
|
||||
|
||||
int thread_set_raised(rb_thread_t *th);
|
||||
int thread_reset_raised(rb_thread_t *th);
|
||||
|
||||
VALUE rb_f_eval(int argc, VALUE *argv, VALUE self);
|
||||
VALUE rb_make_exception _((int argc, VALUE *argv));
|
||||
VALUE rb_make_exception(int argc, VALUE *argv);
|
||||
|
||||
NORETURN(void rb_fiber_start(void));
|
||||
|
||||
NORETURN(void rb_raise_jump _((VALUE)));
|
||||
NORETURN(void rb_print_undef _((VALUE, ID, int)));
|
||||
NORETURN(void rb_raise_jump(VALUE));
|
||||
NORETURN(void rb_print_undef(VALUE, ID, int));
|
||||
NORETURN(void vm_localjump_error(const char *, VALUE, int));
|
||||
NORETURN(void vm_jump_tag_but_local_jump(int, VALUE));
|
||||
|
||||
|
|
2
keywords
2
keywords
|
@ -1,6 +1,6 @@
|
|||
%{
|
||||
struct kwtable {char *name; int id[2]; enum lex_state_e state;};
|
||||
const struct kwtable *rb_reserved_word _((const char *, unsigned int));
|
||||
const struct kwtable *rb_reserved_word(const char *, unsigned int);
|
||||
#ifndef RIPPER
|
||||
%}
|
||||
|
||||
|
|
|
@ -31,7 +31,7 @@ error "gperf generated tables don't work with this execution character set. Plea
|
|||
#line 1 "keywords"
|
||||
|
||||
struct kwtable {char *name; int id[2]; enum lex_state_e state;};
|
||||
const struct kwtable *rb_reserved_word _((const char *, unsigned int));
|
||||
const struct kwtable *rb_reserved_word(const char *, unsigned int);
|
||||
#ifndef RIPPER
|
||||
#line 7 "keywords"
|
||||
struct kwtable;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
%{
|
||||
struct kwtable {char *name; int id[2]; enum lex_state_e state;};
|
||||
const struct kwtable *rb_reserved_word _((const char *, unsigned int));
|
||||
const struct kwtable *rb_reserved_word(const char *, unsigned int);
|
||||
#ifndef RIPPER
|
||||
%}
|
||||
|
||||
|
|
2
load.c
2
load.c
|
@ -215,7 +215,7 @@ rb_provide(const char *feature)
|
|||
rb_provide_feature(rb_str_new2(feature));
|
||||
}
|
||||
|
||||
NORETURN(static void load_failed _((VALUE)));
|
||||
NORETURN(static void load_failed(VALUE));
|
||||
|
||||
void
|
||||
rb_load(VALUE fname, int wrap)
|
||||
|
|
2
thread.c
2
thread.c
|
@ -1998,7 +1998,7 @@ struct thgroup {
|
|||
* were created.
|
||||
*/
|
||||
|
||||
static VALUE thgroup_s_alloc _((VALUE));
|
||||
static VALUE thgroup_s_alloc(VALUE);
|
||||
static VALUE
|
||||
thgroup_s_alloc(VALUE klass)
|
||||
{
|
||||
|
|
Загрузка…
Ссылка в новой задаче