If I put $100 in RRSP, and the 100 becomes 105$ at the end of the year, I don't pay any tax on the $5 unless of course I withdraw the money from my RRSP. Do I still need to report the $5 as income on my tax return?
No. Income inside an RRSP is sheltered from income tax until you withdraw it. That is, indeed, the major benefit of RRSPs.
Note that you will eventually declare this as income. Consider the following case: - in 2015, you make $1000 in income. - in 2015, you contribute $100 to your RRSPs. You store this in an account that pays interest, rather than investing it in stocks, bonds, or mutual funds. - between 2015 and 2025, your money makes an additional $100 in interest. - in 2025, you are retired and pull out the entire amount in your RRSP, i.e. $200.
Now, between 2015 and 2025, you did not declare the income from interest. You'd have had to do this if the money was in a regular bank account (instead of an RRSP or a TFSA). Indeed, your bank would have issued tax forms in that case. But you don't report income sheltered in an RRSP. This is good, as it increases the power of compounding.
In 2015, you pay tax on only $900 rather than the full $1000.
In 2025, you pull out the entire $200. You report all $200 as income (or, actually, as a withdrawal from your RRSP, but it's the same thing). You pay tax on the initial $100 investment (which you did not do in 2015), and you also pay tax on the $100 that your investment has made (and which you are now pulling out).
The hope is that your income is now lower, as you are retired. So you'll end up paying less income tax. Plus, your investment has had many years of opportunity to compound, tax-free.
TL;DNR: You don't pay tax on, or report gains in, an RRSP account. The bank or investment house won't even issue tax forms, not until you withdraw the money.