diff options
author | Björn Gustavsson <[email protected]> | 2015-10-08 13:04:40 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2015-10-09 10:31:19 +0200 |
commit | 93f5844185a459cbf9efc3843919c463a2eef0fe (patch) | |
tree | 4188b1ce168a8d4d432646d061f11c315c1cf9ba /erts/emulator/beam/erl_db_util.c | |
parent | 5472eb516e969f7f9ac50ab57b195e5b043e1d79 (diff) | |
download | otp-93f5844185a459cbf9efc3843919c463a2eef0fe.tar.gz otp-93f5844185a459cbf9efc3843919c463a2eef0fe.tar.bz2 otp-93f5844185a459cbf9efc3843919c463a2eef0fe.zip |
Teach erlang:is_builtin/3 that erlang:apply/3 is built-in
erlang:is_builtin(erlang, apply, 3) returns 'false'. That seems to be
an oversight in the implementation of erlang:is_builtin/3 rather than
a conscious design decision. Part of apply/3 is implemented in C (as a
special instruction), and part of it in Erlang (only used if apply/3
is used recursively). That makes apply/3 special compared to all other
BIFs.
From the viewpoint of the user, apply/3 is a built-in function,
since it cannot possibly be implemented in pure Erlang.
Noticed-by: Stavros Aronis
Diffstat (limited to 'erts/emulator/beam/erl_db_util.c')
0 files changed, 0 insertions, 0 deletions