[erlang-questions] Help - Can I stop this warning?
Lennart Öhman
Lennart.Ohman@REDACTED
Sat Sep 22 17:04:33 CEST 2007
Hi, the easiest way would be to refrain from using a case when you don't have
more than one branch.
Try
[begin {_,{_,F,_}}=process_info(self(),current_function), F end]
Another reason not to use your suggestion is that define leads to that the
subtituation gets copied into the locations where you use ?IOFUN. And since F
actually gets exported (since it becomes bound in all (the only) branches)
it might very well mess with another varible F in the variable scoop where
you use IOFUN. What I am trying to say in too many words is that there is
a very good reason for the warning to be there :-)
Best Regards
Lennart
-------------------------------------------------------------------------------
Lennart Öhman phone: +46 8 587 623 27
Sjöland & Thyselius Telecom AB cell : +46 70 552 6735
Hälsingegatan 43, 10th floor fax : +46 8 667 8230
SE-113 31 STOCKHOLM, SWEDEN email: lennart.ohman@REDACTED
-----Original Message-----
From: erlang-questions-bounces@REDACTED [mailto:erlang-questions-bounces@REDACTED] On Behalf Of G Bulmer
Sent: den 22 september 2007 16:18
To: erlang-questions@REDACTED
Subject: [erlang-questions] Help - Can I stop this warning?
I have been playing with this macro to print the current functions name:
-define(IOFUN(), io:format("~s: ", [case process_info(self
(),current_function) of {_,{_,F,_}} ->F end])).
Unfortunately, I get this irritating warning on *every* function, on the first use of ?IOFUN():
./script.erl:34: Warning: variable 'F' exported from 'case' (line 31) ...
Can someone suggest how I get rid of it?
Garry
_______________________________________________
erlang-questions mailing list
erlang-questions@REDACTED
http://www.erlang.org/mailman/listinfo/erlang-questions
More information about the erlang-questions
mailing list