Bonjour.
Je cherche � comprendre pourquoi mon programme pose probl�me � gdb. La compilation se d�roule sans erreur et le programme s'ex�cute normalement, mais gdb me renvoie un "Debugger finished with status 1" et les points d'arr�t ne fonctionnent pas.

classe.hpp
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#ifndef CLASSE_HPP
#define CLASSE_HPP
#include <vector>
 
const int               array[] = {1, 2, 3, 4};
const std::vector<int>  vect (array, array + 4);
 
class MaClasse
{
    MaClasse();
    ~MaClasse();
    std::vector<int>*    pVect;
};
#endif  //CLASSE_HPP
classe.cpp
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
#include "classe.hpp"
 
MaClasse::MaClasse()
{
    pVect = new std::vector<int>(4);
}
 
MaClasse::~MaClasse()
{
    delete pVect;
}
main.cpp
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
#include <iostream>
#include "classe.hpp"
 
int main()
{
    std::cout << "Un simple test..." << std::endl;
    return 0;
}
Les sources originales ont �t� "all�g�es" pour �tre pr�sent�es sur le forum, ce qui explique l'inutilit� des variables globales.


Le probl�me disparait si je regroupe tout le code dans un m�me fichier. M�me chose si je supprime les deux variables globales (array et vect dans classe.hpp). Ou bien encore en modifiant l'allocation dynamique dans le constructeur :

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
 
pVect  = new std::vector<int>(4); // erreur
pVect  = new std::vector<int>; // ok
Voici la copie de la console de gdb :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
Building to ensure sources are up-to-date
Build succeeded
Selecting target: 
Debug
Adding source dir: E:\developpement\CodeBlocks\projet\vecttest\
Adding source dir: E:\developpement\CodeBlocks\projet\vecttest\
Adding file: bin\Debug\vecttest.exe
Starting debugger: 
done
Registered new type: wxString
Registered new type: STL String
Registered new type: STL Vector
Setting breakpoints
Debugger name and version: GNU gdb 6.8
Child process PID: 3060
Debugger finished with status 1

J'ai remarqu� que le log d�taill� de gdb se termin� par un message inhabituel. A toute fin utile, j'en fournis les derni�res lignes :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
 
> run
gdb: win32_init_thread_list
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
[New thread 3252.0x914]
J'utilise gdb 6.8 avec code::blocks � jour, le tout sous XP.

Le probl�me vient-il de mon code ou d'une mauvaise configuration de mingw32? Si quelqu'un peut m'apporter quelques �claircissements, je suis preneur parce que l�, je s�che.

Merci d'avance.