1. Debug settings have debug information with it, while release don't have it.
2. Debug has lower optimization settings compared to release for better debug view.
My queries:
1. What kind of debug information in point 1.
2. If I set same debug optimization settings as of release then will the code be same.
3. Keil don't have separte debug & release settings. In "project target" we can select same project with different opt settings but it don't have separate settings for release. So where is debug info in this case
4. On all Eclipse based & IAR compiler also have separate release & debug settings. In IAR option I check that in option there is macro defined "NDEBUG" if I select release settings. I didn't it anywhere else in project. So what benefit it gives except like certain features can be added like:
ifndef(NDEBUG)
// blonk led to indicate debug is attached
5. What if in my final code, I keep debug setting & change opt level that I need. Will my application will be slower.