User forums > Using Code::Blocks
Debug will not stop when exception 'std::out_of_range' appears
syheliel:
I have the following code. After executing, a message terminate called after throwing an instance of 'std::out_of_range' will appear. But in debug mode, this exception will not be caught.
My expectation result is that debug mode can stop on the corresponding line on s.substr(2,33);
--- Code: ---#include<cstdio>
#include<cstring>
#include<algorithm>
#include<string>
#include<vector>
#include<iostream>
#include<cmath>
typedef long long ll;
using namespace std;
int main() {
string s = "2" ;
s.substr(2,33);
return 0;
}
--- End code ---
oBFusCATed:
Settings -> Debugger -> Your config -> Catch C++ exceptions
syheliel:
It doesn't work for me. Here is my environment:
--- Code: ---Name : Code::Blocks
Version : 20.03-r11983
SDK Version : 2.0.0
Scintilla Version: 3.7.5
Author : The Code::Blocks Team
E-mail : info@codeblocks.org
Website : http://www.codeblocks.org
wxWidgets Library (wxMSW port)
Version 3.1.3 (Unicode: wchar_t, debug level: 1),
compiled at Nov 1 2019 18:53:26
Runtime version of toolkit used is 10.0.
wx3.1.3 - gcc 8.1.0 (Windows,unicode)
--- End code ---
Does any additional information can help?
oBFusCATed:
Yes, enable full debugger log and post a session.
BlueHazzard:
--- Quote from: oBFusCATed on May 04, 2021, 10:16:22 am ---Yes, enable full debugger log and post a session.
--- End quote ---
To do this:
Settings->Debugger->Common->Full debug log
Start debugger
post the content of the "Debugger" tab from the log view at the bottom
Navigation
[0] Message Index
[#] Next page
Go to full version