bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Crash with C++ editing


From: Adrien,Delcour
Subject: Crash with C++ editing
Date: Wed, 12 Nov 2003 09:21:35 +0100

// Have a good day. Editing the following C++ program in GNU Emacs
21.2.93.1
// (i386-mandrake-linux-gnu, X toolkit, Xaw3d scroll bars, of 2003-01-29
on
// hp.6.mandrakesoft.com) leads to a crash. See details at line 4 (line
1 begins
// with "void"). The file .emacs is as in Mandrake Linux 9.1. The
present lines (before
// the first "void") were not in the program when I had the crash.


void fonction1()
{
  leLitteral = "\"\\\""; //  \" pour le guillemet ouvrant le littéral,
\\ pour la barre d'échappement, \" pour le caractère désigné (guillemet)

  // Put the cursor on the ; at the end of the following instruction of
the program, type (in insertion mode) one character " and wait
  // until the cursor becomes fixed. If I do this, it leads to a crash.
(Mandrake Linux 9.1 french, KDE.)
  leLitteral += ;
}




void fonction2()
  // Si je ne me trompe, il n'est pas possible de désigner explicitement
une position dans flux (streampos ou pos_type), sauf la position 0. Donc
la présente
  // fonction d'écriture d'un programme doit prendre en paramètre des
noms de variables de type streampos et non des variables de ce type
streampos.
{
  ofstream flux("PourEcrireRecherches");
  if (!flux)
  {
    cerr << "Impossible d'ouvrir le fichier \"PourEcrireRecherches\"."
<< endl;
    exit(1);
  }
// Ce qui suit est peut-être trop tracassier. Il vaudrait peut-être
mieux que la fonction compare les deux limites de recherche qui lui sont
passées
// et les mette dans des variables ad hoc. Dans ce cas, les noms
departDeLaRecherche et finDeLaRecherche ne seraient pas très adaptés.

//  if (departDeLaRecherche > finDeLaRecherche)

  flux << "  { cerr << \"Dans une procédure de recherche vers le bas,
avec chaîne à chercher \\\"\"" << aChercher << "\\\", le départ de la
recherche ne peut pas être plus proche de la fin du fichier que la fin
de la recherche.\";\n";


  flux << "  unsigned long longueurChaine = " << strlen(aChercher) <<
";\n"; // Dans ce programme d'écriture d'un programme, il n'est
}



}


int main()
{
  return 0;
}// Editing the following program in GNU Emacs 21.2.93.1
// (i386-mandrake-linux-gnu, X toolkit, Xaw3d scroll bars, of 2003-01-29
on
// hp.6.mandrakesoft.com) leads to a crash. See details at line 4 (line
1 begins
// with "void"). The file .emacs is as in Mandrake Linux 9.1. The lines
before
// the first "void" were not in the program when I had the crash.


void fonction1()
{
  leLitteral = "\"\\\""; //  \" pour le guillemet ouvrant le littéral,
\\ pour la barre d'échappement, \" pour le caractère désigné (guillemet)

  // Put the cursor on the ; at the end of the following instruction of
the program, type (in insertion mode) one character " and wait
  // until the cursor becomes fixed. If I do this, it leads to a crash.
(Mandrake Linux 9.1 french, KDE.)
  leLitteral += ;
}




void fonction2()
  // Si je ne me trompe, il n'est pas possible de désigner explicitement
une position dans flux (streampos ou pos_type), sauf la position 0. Donc
la présente
  // fonction d'écriture d'un programme doit prendre en paramètre des
noms de variables de type streampos et non des variables de ce type
streampos.
{
  ofstream flux("PourEcrireRecherches");
  if (!flux)
  {
    cerr << "Impossible d'ouvrir le fichier \"PourEcrireRecherches\"."
<< endl;
    exit(1);
  }
// Ce qui suit est peut-être trop tracassier. Il vaudrait peut-être
mieux que la fonction compare les deux limites de recherche qui lui sont
passées
// et les mette dans des variables ad hoc. Dans ce cas, les noms
departDeLaRecherche et finDeLaRecherche ne seraient pas très adaptés.

//  if (departDeLaRecherche > finDeLaRecherche)

  flux << "  { cerr << \"Dans une procédure de recherche vers le bas,
avec chaîne à chercher \\\"\"" << aChercher << "\\\", le départ de la
recherche ne peut pas être plus proche de la fin du fichier que la fin
de la recherche.\";\n";


  flux << "  unsigned long longueurChaine = " << strlen(aChercher) <<
";\n"; // Dans ce programme d'écriture d'un programme, il n'est
}



}


int main()
{
  return 0;
}





reply via email to

[Prev in Thread] Current Thread [Next in Thread]