mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
id_table.c: TOKEN_PASTE
* id_table.c (IMPL1): use TOKEN_PASTE, and prevent `op' from expansion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
df62ca9cae
commit
235e7738d6
1 changed files with 2 additions and 3 deletions
|
@ -1503,9 +1503,8 @@ mix_id_table_foreach_values(struct mix_id_table *tbl, enum rb_id_table_iterator_
|
|||
#endif /* ID_TABLE_USE_MIX */
|
||||
|
||||
/* IMPL(create) will be "hash_id_table_create" and so on */
|
||||
#define IMPL2(name, op) name##_##op
|
||||
#define IMPL1(name, op) IMPL2(name, op)
|
||||
#define IMPL(op) IMPL1(ID_TABLE_NAME, id_table##op)
|
||||
#define IMPL1(name, op) TOKEN_PASTE(name, _id##op) /* expand `name' */
|
||||
#define IMPL(op) IMPL1(ID_TABLE_NAME, _table##op) /* but prevent `op' */
|
||||
|
||||
struct rb_id_table *rb_id_table_create(size_t size) {return (struct rb_id_table *)IMPL(_create)(size);}
|
||||
void rb_id_table_free(struct rb_id_table *tbl) { IMPL(_free)((ID_TABLE_IMPL_TYPE *)tbl);}
|
||||
|
|
Loading…
Reference in a new issue