@smititelu, @pkuzak - it is a misunderstanding of what $var() is supposed to do and how it acts. It is not only about an extra int field, it is about the concept behind $var().
What @smititelu gave as an example is what the note in docs try to say and what I gave as an example above.
It can create big problems no matter is with the warning or not in the C code, because it still keeps the value from previous assignment.
Let's say you have this situation:
- first request has SOME_HEADER (the variable is assigned, and by that no warning log) - the next request is without SOME_HEADER, but the var still has the value from first request and practically, during processing the 2nd request you use wrong value
Coming back to @smititelu example, you have to set var to a value that you can compare with, like:
``` $var(data)=""; if (is_present_hf("SOME_HEADER")) { $var(data) = _get_data_from_some_header_; } if ($var(data) != "") { _do_something_with_data_ } ```
Which is same concept as with my `while` example above.
Or use $x/avp() without setting a value and compare with $null.
As I said, I don't see any benefit with the PR, irrelevant of being optional or not.