min, max, abs.. are macroses?

kirbergus
I don't mind a good discussion but please watch your language. Definitely if you make statements which are not solid.
1) your language:
It is not macroses but macros
You do not use WTF. Definitely not in a title.
2) the "must be a function"
The C89 standard you refer to is more commonly known as ANSI C. ANSI C was officially released in 1989. I have been programming in C from 1991 till 2000 for my living. In all those years I used a define for max. It is new to me that this must be a function. If you are sure that ANSI C states that max must be a function please tell me where this is stated.
The C99 is the newest version of C. The compiler used by the Arduino team is (like most other C compilers) not 100% compliant with C99. As far as I know there is no statement that max must be a function. Please state where it states min max and abs must be functions. Also refer to where it states all C compilers must comply to C99.
3) No macros but Inline
You state that these macros must be rewritten as inline. Inline is new in C99. It comes from C++. Inline is class related and on a AVR you do not want to have classes for something as basic as integers.
4) why a macro?
A macro has a great advantage. That is, it works with any type that implements the methods you use. So you do not need a maxint maxlong maxstring.....
5) You are right there is a risk with macros
On the content you are right that

 MyNumber=5; 
max(++MyNumber);

will result in MyNumber being 7 and not 6; This is however a design decision that has been taken a long time ago on very good ground by people that didn't know about Arduino because it simply didn't exist yet. So blaming Arduino is not the way to go. It has been like this for decades now. I feel no sense of urgency.
6) overloaded functions from C++ std
I see no reason why you could not overload. You can use the #undef instructions if you want.

My advice: before you post again read this article:How To Ask Questions The Smart Way
If you do not comply to these rules I will no longer respond on your posts.
Best regards
Jantje