why the watchdog failed to reset????

it just go into the infinite loop print,i wonder why the watchdog failed ?? it didn't happen everytime!!

here is my code:

#define soft_reset()
do
{
wdt_enable(WDTO_15MS);
for(;:wink:
{
Serial.print("Watchdog Error !");
wdt_enable(WDTO_15MS);
}
} while(0)

here is my code:

But only part of it, complete with a smiley I see. Please post your whole program or a complete program that exhibits the problem and use code tags (</>) when you do.

Whatโ€™s with all the 's ?

What's with all the 's ?

It's a multi-line macro. They are needed. Why not use a function? Beats me why people go to the effort of designing non-type safe macros when a function is so much easier.