In a 12-inch saute pan, heat the olive oil over a medium-high flame until hot but not smoking. Add the onion
and garlic and saute for a few minutes, until onion is translucent. Add chopped tomatoes
and their juices and bring to a boil. Reduce to a simmer
and let cook until the tomatoes begin to soften and break down, about 5 minutes.
Using a wooden spoon, add the stale bread chunks and water. Continue simmering until all the bread has absorbed as much liquid as possible, yielding a baby food-like consistency. Add the garlic and stir in the basil
. Season, to taste, with pepper. Let the soup
continue simmering for 10 more minutes, then serve immediately in warmed soup bowls. Garnish
, to taste, with Parmigiano-Reggiano