Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Bug Borland C, C++

9 réponses
Avatar
Christian PANEL
deux petits bouts de code mettant en évidence un bug des compilateurs
Borland en matière de gestion des flottant.le test renvoie OK sur les
compilateurs GNU et Microsoft, NOT OK sur les compilateur borland (je
précise toute optimisation
dévalidée)=================================================#include <math.h>
#include <stdio.h>
static long double t1 = 1.0L;
static long double t2=60.0L;
static long double t3;
static long double t4;
int main()
{
t3 = t1 / t2;
t4 = t1 / 60.0L; printf("%s",(t3==t4) ? "OK!" : "NOT OK!");
getch();
}==================================================================================================#include
<math.h>
#include <stdio.h>
static int res1,res2;
int main()
{
double r=240.0;
res1 = r / 60.;
res2 = floor(r / 60.);
printf("%s",(res1==res2) ? "OK!" : "NOT OK!");
getch();
}=================================================

9 réponses

Avatar
Fabien LE LEZ
On Tue, 17 Jul 2007 21:52:49 +0200, "Christian PANEL"
:

un bug des compilateurs Borland


De tous les compilateurs Borland ? Ou d'une version bien précise ?

D'autre part, est-ce que Borland maintient encore son compilateur
C++ ?
Si oui, as-tu bien vérifié que tu utilises la dernière version ?

Avatar
Michael
Je viens de tester avec C++ Builder 2007, c'est OK pour les 2 tests
Avatar
Sylvain
Fabien LE LEZ wrote on 17/07/2007 23:13:
On Tue, 17 Jul 2007 21:52:49 +0200, "Christian PANEL"
:

un bug des compilateurs Borland


De tous les compilateurs Borland ? Ou d'une version bien précise ?


à tout le moins tous les compilos Pascal et C++ que j'ai utilisé sur
DOS, Windows et MacOS avaient des bugs sur les booleans, les
transcendantes et les flottants, ... alors savoir si une version précise
est moins buggée pour certaines opérations ....

Sylvain.


Avatar
Stan
"Sylvain" a écrit dans le message de
news:469ea89e$0$5111$
Fabien LE LEZ wrote on 17/07/2007 23:13:
On Tue, 17 Jul 2007 21:52:49 +0200, "Christian PANEL"
:

un bug des compilateurs Borland


De tous les compilateurs Borland ? Ou d'une version bien précise ?


à tout le moins tous les compilos Pascal et C++ que j'ai utilisé sur
DOS, Windows et MacOS avaient des bugs sur les booleans, les
transcendantes et les flottants, ... alors savoir si une version précise
est moins buggée pour certaines opérations ....


On peut avoir un exemple de ces bugs ?

--
-Stan



Avatar
Sylvain
Stan wrote on 25/07/2007 13:36:

un bug des compilateurs Borland
De tous les compilateurs Borland ? Ou d'une version bien précise ?

à tout le moins tous les compilos Pascal et C++ que j'ai utilisé sur

DOS, Windows et MacOS avaient des bugs sur les booleans, les
transcendantes et les flottants, ... alors savoir si une version précise
est moins buggée pour certaines opérations ....


On peut avoir un exemple de ces bugs ?


google a en sûrement plus que moi, j'ai bien gardé en archive tous les
bugs reports remontés à Borland France (et pour lesquels je compte peu
de réponses) mais je pense que cela n'intéressera personne.

je ne connais pas les "outils modernes" brandés Borland et je ne parlais
pas d'eux (DOS et MacOS n'existent plus si je ne m'abuse), s'ils sont
moins buggés tant mieux.

Sylvain.




Avatar
Sylvain
Sylvain wrote on 25/07/2007 22:34:

(DOS et MacOS n'existent plus si je ne m'abuse)


je sens que je n'aurais pas du le phraser comme cela ...
Sylvain.

Avatar
Christian PANEL
"Michael" <michael.at.gmail.dot.com> a écrit dans le message de news:

Je viens de tester avec C++ Builder 2007, c'est OK pour les 2 tests


c'est curieux parce qu'avec Turbo C++ (nouvellement sorti fin 2006) le bug
est toujours présent, de plus il existe dans les versions suivantes sous
windows toutes testée :
Borland C++ 5.02
Borland Builder
Borland C++ 3
Borland C++ 4
Turbo C++ 2006

Avatar
Christian PANEL
Je suis un peu d'accord avec sylvain, je n'ai pas toujours non plus les
dernières versions de chaque compilateur mais
Microsoft a quelques problèmes également avec les flottants qu'il a (avait?)
résolus en décrètant (dans les headers) que le type "long double" était égal
au type "double". les puristes apprécieront...
Bien sur, peu de personnes utilisent les "long double"...

"Stan" a écrit dans le message de news:
f87ces$obf$

"Sylvain" a écrit dans le message de
news:469ea89e$0$5111$
Fabien LE LEZ wrote on 17/07/2007 23:13:
On Tue, 17 Jul 2007 21:52:49 +0200, "Christian PANEL"
:

un bug des compilateurs Borland


De tous les compilateurs Borland ? Ou d'une version bien précise ?


à tout le moins tous les compilos Pascal et C++ que j'ai utilisé sur
DOS, Windows et MacOS avaient des bugs sur les booleans, les
transcendantes et les flottants, ... alors savoir si une version précise
est moins buggée pour certaines opérations ....


On peut avoir un exemple de ces bugs ?

--
-Stan







Avatar
Christian PANEL
"Christian PANEL" a écrit dans le message de news:
46acb8c3$0$19619$

"Michael" <michael.at.gmail.dot.com> a écrit dans le message de news:

Je viens de tester avec C++ Builder 2007, c'est OK pour les 2 tests


c'est curieux parce qu'avec Turbo C++ (nouvellement sorti fin 2006) le bug
est toujours présent, de plus il existe dans les versions suivantes sous
windows toutes testée :
Borland C++ 5.02
Borland Builder
Borland C++ 3
Borland C++ 4
Turbo C++ 2006



le bug existe également pour le Free Command Line Compiler de Borland.