There are two kinds of logic - combinational and synchronous.
The idea is to use combinational logic to do something, like add from a few sets of inputs. The result is available as soon as possible, with some gate delays. If there is too much going on, the differences in the delays through different paths will make your life hell. So we keep it as simple as possible, and register the results on a clock transition. That's synchronous logic.
It is really an organizational issue. With a small combinational circuit, we can guarantee (or at least measure) the worst-case delays. Now as long as the clock cycle is a little more than the worst case, our circuit is guaranteed to work.
So in your case, add, whatever. Register the result. Now you can connect the registered result to one of the inputs. Any other way of thinking (feedback loops or whatever) is just confusing to everyone.