prim_file fixes

Kostis Sagonas <>
Sat Feb 5 12:12:14 CET 2011

The documentation of erlang:open_port/2 states:

   open_port(PortName, PortSettings) -> port()
       PortName = {spawn, Command} | ...
       Command = string()

while in prim_file.erl there are calls to this function (via drv_open/2)

drv_open(Driver, Portopts) ->
     try erlang:open_port({spawn, Driver}, Portopts) of     % line 821

where the Driver is an atom and dialyzer does not like that.
This comes from the use of the ?FD_DRV macro.

Change this macro from:

    -define(FD_DRV, efile).
    -define(FD_DRV, "efile").

While at it, do some cosmetic cleanups.

Fetch by:

   git fetch git://  prim_file-fixes


More information about the erlang-patches mailing list