[erlang-questions] code:which/1 return value

Per Hedeland <>
Tue Sep 25 00:30:31 CEST 2012

This is a bug, right?

Erlang R15B02 (erts-5.9.2) [source] [smp:2:2] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V5.9.2  (abort with ^G)
1> code:which(test).
"./test.beam"        <<<<<<<<<<<<
2> l(test).
3> code:which(test).

At least the documentation says "If the module is not loaded, this
function searches the code path for the first file which contains object
code for Module and returns the _absolute file name_." With the code
path cache enabled, it's "almost" right:

1> code:rehash().
2> code:which(test).

(That *is* an "absolute file name", but I think it's a reasonable
expectation that it should agree with what filename:absname/1 would

--Per Hedeland

More information about the erlang-questions mailing list