I don't understand your question. Are you suggesting that something
be added or asking why something is allowed?

Why is it allowed?
for example:
int myfun(int=10);

Theory 1: it's a side effect of two features:
this is allowed
int myFunc(int) // I never use the arg so why name it?
{
}
and this is allowed
int myFunc(int i = 5) // normal defaulting
{
}
so to avoid corner cases they are allowed in combination
theory 2:
it gives a function (with an anon arg, see above) that can be called like
this:
myfun(5);
and like this:
myfun();

I don't understand your question. Are you suggesting that something
be added or asking why something is allowed?

Why is it allowed?
for example:
int myfun(int=10);

Theory 1: it's a side effect of two features:
this is allowed
int myFunc(int) // I never use the arg so why name it?
{
}
and this is allowed
int myFunc(int i = 5) // normal defaulting
{
}
so to avoid corner cases they are allowed in combination
theory 2:
it gives a function (with an anon arg, see above) that can be called
like this:
myfun(5);
and like this:
myfun();

Theory 1: it's a side effect of two features:
this is allowed
int myFunc(int) // I never use the arg so why name it?
{
}
and this is allowed
int myFunc(int i = 5) // normal defaulting
{
}
so to avoid corner cases they are allowed in combination
theory 2:
it gives a function (with an anon arg, see above) that can be called
like this:
myfun(5);
and like this:
myfun();