Result of eval( arguments.callee );

I just ran the below function in Chrome Developer Tool, but nothing happened. So what is happening – is this going to be an infinite loop?

function foo() {
    eval( arguments.callee );
}

foo(  );

If I modify the function to below:

function foo() {
    console.log('Called');
    eval( arguments.callee.toString() );
}

foo();

Output:

Called

Output is only printed one time, so whats happening?