James Kanze writes:
[...]
| Exactement comme dans ces cas, les implémentations garantissent le
Si tu trouves cete garantie dans la documentation de GCC, donne-moi la
référence parce que la dernière fois que j'ai cherché je n'ai pas
trouvé.
| comportement du remplacement de malloc, et en offrent même plusieurs
| pour que tu n'as pas besoin d'en écrire un toi-même.
| |> | Dans la pratique, je ne connais pas d'implémentation où on ne
| |> | peut pas,
| |> ce qui ne veut pas dire que cela n'arrivera jamais.
| Certes. Mais on parle ici des questions d'optimisation ou de mise au
| point, et non de quelque chose de fondamental dans la fonctionnement
| du programme. La risque pour la portabilité est en fait moins grande
| que si tu utilises des threads.
Remplacer malloc n'est pas une question d'optimisation. Une
optimisation transforme un programme bien formé en un autre programme
bien formé avec la mÊme sémantqiue.
| |> En fait, l'une des prochaines versions de GCC (je ne sais pas si
| |> c'est 3.5 ou 4.0) va probablement changer cela. Certains voient
| |> des optimisations qu'ils peuvent faire et veulent l'implémenter.
| |> J'ai argué pour qu'on ne le fasse pas, mais visiblement j'étais
| |> minoritaire.
| Il vont faire en sort qu'on ne peut pas remplacer malloc par sa
| propre version ? Or que « man malloc », au moins sous Solaris, dit
La question est : est-ce que « man malloc » de Solaris fait partie de
la documentation du compilateur, ou est-ce que le malloc de solaris
fait partie de l'implémentation du compilateur.
| expressemment qu'on peut, et qu'on a le choix entre plusieurs
| versions. (En fait, les mallocs de Sun vont plus loins, en ce qu'ils
| offrent des sémantiques différentes, au moins dans le cas de BSD
| malloc.)
James Kanze <kanze@alex.gabi-soft.fr> writes:
[...]
| Exactement comme dans ces cas, les implémentations garantissent le
Si tu trouves cete garantie dans la documentation de GCC, donne-moi la
référence parce que la dernière fois que j'ai cherché je n'ai pas
trouvé.
| comportement du remplacement de malloc, et en offrent même plusieurs
| pour que tu n'as pas besoin d'en écrire un toi-même.
| |> | Dans la pratique, je ne connais pas d'implémentation où on ne
| |> | peut pas,
| |> ce qui ne veut pas dire que cela n'arrivera jamais.
| Certes. Mais on parle ici des questions d'optimisation ou de mise au
| point, et non de quelque chose de fondamental dans la fonctionnement
| du programme. La risque pour la portabilité est en fait moins grande
| que si tu utilises des threads.
Remplacer malloc n'est pas une question d'optimisation. Une
optimisation transforme un programme bien formé en un autre programme
bien formé avec la mÊme sémantqiue.
| |> En fait, l'une des prochaines versions de GCC (je ne sais pas si
| |> c'est 3.5 ou 4.0) va probablement changer cela. Certains voient
| |> des optimisations qu'ils peuvent faire et veulent l'implémenter.
| |> J'ai argué pour qu'on ne le fasse pas, mais visiblement j'étais
| |> minoritaire.
| Il vont faire en sort qu'on ne peut pas remplacer malloc par sa
| propre version ? Or que « man malloc », au moins sous Solaris, dit
La question est : est-ce que « man malloc » de Solaris fait partie de
la documentation du compilateur, ou est-ce que le malloc de solaris
fait partie de l'implémentation du compilateur.
| expressemment qu'on peut, et qu'on a le choix entre plusieurs
| versions. (En fait, les mallocs de Sun vont plus loins, en ce qu'ils
| offrent des sémantiques différentes, au moins dans le cas de BSD
| malloc.)
James Kanze writes:
[...]
| Exactement comme dans ces cas, les implémentations garantissent le
Si tu trouves cete garantie dans la documentation de GCC, donne-moi la
référence parce que la dernière fois que j'ai cherché je n'ai pas
trouvé.
| comportement du remplacement de malloc, et en offrent même plusieurs
| pour que tu n'as pas besoin d'en écrire un toi-même.
| |> | Dans la pratique, je ne connais pas d'implémentation où on ne
| |> | peut pas,
| |> ce qui ne veut pas dire que cela n'arrivera jamais.
| Certes. Mais on parle ici des questions d'optimisation ou de mise au
| point, et non de quelque chose de fondamental dans la fonctionnement
| du programme. La risque pour la portabilité est en fait moins grande
| que si tu utilises des threads.
Remplacer malloc n'est pas une question d'optimisation. Une
optimisation transforme un programme bien formé en un autre programme
bien formé avec la mÊme sémantqiue.
| |> En fait, l'une des prochaines versions de GCC (je ne sais pas si
| |> c'est 3.5 ou 4.0) va probablement changer cela. Certains voient
| |> des optimisations qu'ils peuvent faire et veulent l'implémenter.
| |> J'ai argué pour qu'on ne le fasse pas, mais visiblement j'étais
| |> minoritaire.
| Il vont faire en sort qu'on ne peut pas remplacer malloc par sa
| propre version ? Or que « man malloc », au moins sous Solaris, dit
La question est : est-ce que « man malloc » de Solaris fait partie de
la documentation du compilateur, ou est-ce que le malloc de solaris
fait partie de l'implémentation du compilateur.
| expressemment qu'on peut, et qu'on a le choix entre plusieurs
| versions. (En fait, les mallocs de Sun vont plus loins, en ce qu'ils
| offrent des sémantiques différentes, au moins dans le cas de BSD
| malloc.)
writes:Remplacer malloc n'est pas une question d'optimisation. Une
optimisation transforme un programme bien formé en un autre
programme bien formé avec la mÊme sémantqiue.
N'importe quoi. Cette signification décrit ce que fait un
optimisateur dans le compilateur, mais c'est assez limiter par
rapport à ce qui se fait lors du développement de l'application.
Tu es complèment à côté de tes pompes là. Cette signification vaut
autant pour ce que fait le compilateur que ce que fait le programmeur.
kanze@gabi-soft.fr writes:
Remplacer malloc n'est pas une question d'optimisation. Une
optimisation transforme un programme bien formé en un autre
programme bien formé avec la mÊme sémantqiue.
N'importe quoi. Cette signification décrit ce que fait un
optimisateur dans le compilateur, mais c'est assez limiter par
rapport à ce qui se fait lors du développement de l'application.
Tu es complèment à côté de tes pompes là. Cette signification vaut
autant pour ce que fait le compilateur que ce que fait le programmeur.
writes:Remplacer malloc n'est pas une question d'optimisation. Une
optimisation transforme un programme bien formé en un autre
programme bien formé avec la mÊme sémantqiue.
N'importe quoi. Cette signification décrit ce que fait un
optimisateur dans le compilateur, mais c'est assez limiter par
rapport à ce qui se fait lors du développement de l'application.
Tu es complèment à côté de tes pompes là. Cette signification vaut
autant pour ce que fait le compilateur que ce que fait le programmeur.
writes:
| Gabriel Dos Reis wrote in message
| news:...
| > James Kanze writes:
| > [...]
| > | Exactement comme dans ces cas, les implémentations garantissent le
| > Si tu trouves cete garantie dans la documentation de GCC,
| > donne-moi la référence parce que la dernière fois que j'ai cherché
| > je n'ai pas trouvé.
| Les versions de gcc dont je me suis servi se sont toujours basées
| sur le libc du système d'exploitation. Or, si je fais « man malloc »
| sur mon système, j'ai bien cette garantie.
Ma question ne concernait pas que ce tu penses que GCC fait, mais une
garantie dans la documentation de GCC -- qu tu as clamée avant.
| Dans la réalité, c'est une pratique tellement répandue qu'un
| fournisseur de compilateur n'oserait plus le supprimer.
Aarf. Va dire ça à ceux qui proposent l'optimisation en question. Ils
n'en sont plus au stade « oser ». Ils vont le faire, et c'est juste
une question de temps. Et le compilateur survivra.
| > | comportement du remplacement de malloc, et en offrent même
| > | plusieurs pour que tu n'as pas besoin d'en écrire un toi-même.
| > | |> | Dans la pratique, je ne connais pas d'implémentation où on
| > | |> | ne peut pas,
| > | |> ce qui ne veut pas dire que cela n'arrivera jamais.
| > | Certes. Mais on parle ici des questions d'optimisation ou de
| > | mise au point, et non de quelque chose de fondamental dans la
| > | fonctionnement du programme. La risque pour la portabilité est
| > | en fait moins grande que si tu utilises des threads.
| > Remplacer malloc n'est pas une question d'optimisation. Une
| > optimisation transforme un programme bien formé en un autre
| > programme bien formé avec la mÊme sémantqiue.
| N'importe quoi. Cette signification décrit ce que fait un
| optimisateur dans le compilateur, mais c'est assez limiter par
| rapport à ce qui se fait lors du développement de l'application.
Tu es complèment à côté de tes pompes là. Cette signification vaut
autant pour ce que fait le compilateur que ce que fait le programmeur.
| > | |> En fait, l'une des prochaines versions de GCC (je ne sais
| > | |> pas si c'est 3.5 ou 4.0) va probablement changer
| > | |> cela. Certains voient des optimisations qu'ils peuvent faire
| > | |> et veulent l'implémenter. J'ai argué pour qu'on ne le fasse
| > | |> pas, mais visiblement j'étais minoritaire.
| > | Il vont faire en sort qu'on ne peut pas remplacer malloc par sa
| > | propre version ? Or que « man malloc », au moins sous Solaris,
| > | dit
| > La question est : est-ce que « man malloc » de Solaris fait partie
| > de la documentation du compilateur, ou est-ce que le malloc de
| > solaris fait partie de l'implémentation du compilateur.
| Il fait partie de la documentation de tous les compilateurs dont je
| me sers sous Solaris.
Et cette assertion est une véritée revelée, ou tu l'as pondue tout
seul ou tu l'as trouvé dans la documentation de GCC ? Ce n'est pas une
question rhétorique.
| > | expressemment qu'on peut, et qu'on a le choix entre plusieurs
| > | versions. (En fait, les mallocs de Sun vont plus loins, en ce
| > | qu'ils offrent des sémantiques différentes, au moins dans le cas
| > | de BSD malloc.)
| Plus important, évidemment, c'est le fait que dans la pratique, on
| est amené à remplacer malloc prèsque toujours, au moins lors des
| tests. De même qu'on modifie pas mal d'autres choses afin de les
| instrumenter. Et qu'un compilateur qui ne le permettra pas ne
| servira pas.
c'est une prédiction estampillée pacorabane ? Parce que GCC fait déjà
pas mal de suppositions découlant des spécifications de C et C++ pour
les fonctions bibliothèques, et il survit.
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
kanze@gabi-soft.fr writes:
| Gabriel Dos Reis <gdr@integrable-solutions.net> wrote in message
| news:<m3znedwvoa.fsf@uniton.integrable-solutions.net>...
| > James Kanze <kanze@alex.gabi-soft.fr> writes:
| > [...]
| > | Exactement comme dans ces cas, les implémentations garantissent le
| > Si tu trouves cete garantie dans la documentation de GCC,
| > donne-moi la référence parce que la dernière fois que j'ai cherché
| > je n'ai pas trouvé.
| Les versions de gcc dont je me suis servi se sont toujours basées
| sur le libc du système d'exploitation. Or, si je fais « man malloc »
| sur mon système, j'ai bien cette garantie.
Ma question ne concernait pas que ce tu penses que GCC fait, mais une
garantie dans la documentation de GCC -- qu tu as clamée avant.
| Dans la réalité, c'est une pratique tellement répandue qu'un
| fournisseur de compilateur n'oserait plus le supprimer.
Aarf. Va dire ça à ceux qui proposent l'optimisation en question. Ils
n'en sont plus au stade « oser ». Ils vont le faire, et c'est juste
une question de temps. Et le compilateur survivra.
| > | comportement du remplacement de malloc, et en offrent même
| > | plusieurs pour que tu n'as pas besoin d'en écrire un toi-même.
| > | |> | Dans la pratique, je ne connais pas d'implémentation où on
| > | |> | ne peut pas,
| > | |> ce qui ne veut pas dire que cela n'arrivera jamais.
| > | Certes. Mais on parle ici des questions d'optimisation ou de
| > | mise au point, et non de quelque chose de fondamental dans la
| > | fonctionnement du programme. La risque pour la portabilité est
| > | en fait moins grande que si tu utilises des threads.
| > Remplacer malloc n'est pas une question d'optimisation. Une
| > optimisation transforme un programme bien formé en un autre
| > programme bien formé avec la mÊme sémantqiue.
| N'importe quoi. Cette signification décrit ce que fait un
| optimisateur dans le compilateur, mais c'est assez limiter par
| rapport à ce qui se fait lors du développement de l'application.
Tu es complèment à côté de tes pompes là. Cette signification vaut
autant pour ce que fait le compilateur que ce que fait le programmeur.
| > | |> En fait, l'une des prochaines versions de GCC (je ne sais
| > | |> pas si c'est 3.5 ou 4.0) va probablement changer
| > | |> cela. Certains voient des optimisations qu'ils peuvent faire
| > | |> et veulent l'implémenter. J'ai argué pour qu'on ne le fasse
| > | |> pas, mais visiblement j'étais minoritaire.
| > | Il vont faire en sort qu'on ne peut pas remplacer malloc par sa
| > | propre version ? Or que « man malloc », au moins sous Solaris,
| > | dit
| > La question est : est-ce que « man malloc » de Solaris fait partie
| > de la documentation du compilateur, ou est-ce que le malloc de
| > solaris fait partie de l'implémentation du compilateur.
| Il fait partie de la documentation de tous les compilateurs dont je
| me sers sous Solaris.
Et cette assertion est une véritée revelée, ou tu l'as pondue tout
seul ou tu l'as trouvé dans la documentation de GCC ? Ce n'est pas une
question rhétorique.
| > | expressemment qu'on peut, et qu'on a le choix entre plusieurs
| > | versions. (En fait, les mallocs de Sun vont plus loins, en ce
| > | qu'ils offrent des sémantiques différentes, au moins dans le cas
| > | de BSD malloc.)
| Plus important, évidemment, c'est le fait que dans la pratique, on
| est amené à remplacer malloc prèsque toujours, au moins lors des
| tests. De même qu'on modifie pas mal d'autres choses afin de les
| instrumenter. Et qu'un compilateur qui ne le permettra pas ne
| servira pas.
c'est une prédiction estampillée pacorabane ? Parce que GCC fait déjà
pas mal de suppositions découlant des spécifications de C et C++ pour
les fonctions bibliothèques, et il survit.
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
writes:
| Gabriel Dos Reis wrote in message
| news:...
| > James Kanze writes:
| > [...]
| > | Exactement comme dans ces cas, les implémentations garantissent le
| > Si tu trouves cete garantie dans la documentation de GCC,
| > donne-moi la référence parce que la dernière fois que j'ai cherché
| > je n'ai pas trouvé.
| Les versions de gcc dont je me suis servi se sont toujours basées
| sur le libc du système d'exploitation. Or, si je fais « man malloc »
| sur mon système, j'ai bien cette garantie.
Ma question ne concernait pas que ce tu penses que GCC fait, mais une
garantie dans la documentation de GCC -- qu tu as clamée avant.
| Dans la réalité, c'est une pratique tellement répandue qu'un
| fournisseur de compilateur n'oserait plus le supprimer.
Aarf. Va dire ça à ceux qui proposent l'optimisation en question. Ils
n'en sont plus au stade « oser ». Ils vont le faire, et c'est juste
une question de temps. Et le compilateur survivra.
| > | comportement du remplacement de malloc, et en offrent même
| > | plusieurs pour que tu n'as pas besoin d'en écrire un toi-même.
| > | |> | Dans la pratique, je ne connais pas d'implémentation où on
| > | |> | ne peut pas,
| > | |> ce qui ne veut pas dire que cela n'arrivera jamais.
| > | Certes. Mais on parle ici des questions d'optimisation ou de
| > | mise au point, et non de quelque chose de fondamental dans la
| > | fonctionnement du programme. La risque pour la portabilité est
| > | en fait moins grande que si tu utilises des threads.
| > Remplacer malloc n'est pas une question d'optimisation. Une
| > optimisation transforme un programme bien formé en un autre
| > programme bien formé avec la mÊme sémantqiue.
| N'importe quoi. Cette signification décrit ce que fait un
| optimisateur dans le compilateur, mais c'est assez limiter par
| rapport à ce qui se fait lors du développement de l'application.
Tu es complèment à côté de tes pompes là. Cette signification vaut
autant pour ce que fait le compilateur que ce que fait le programmeur.
| > | |> En fait, l'une des prochaines versions de GCC (je ne sais
| > | |> pas si c'est 3.5 ou 4.0) va probablement changer
| > | |> cela. Certains voient des optimisations qu'ils peuvent faire
| > | |> et veulent l'implémenter. J'ai argué pour qu'on ne le fasse
| > | |> pas, mais visiblement j'étais minoritaire.
| > | Il vont faire en sort qu'on ne peut pas remplacer malloc par sa
| > | propre version ? Or que « man malloc », au moins sous Solaris,
| > | dit
| > La question est : est-ce que « man malloc » de Solaris fait partie
| > de la documentation du compilateur, ou est-ce que le malloc de
| > solaris fait partie de l'implémentation du compilateur.
| Il fait partie de la documentation de tous les compilateurs dont je
| me sers sous Solaris.
Et cette assertion est une véritée revelée, ou tu l'as pondue tout
seul ou tu l'as trouvé dans la documentation de GCC ? Ce n'est pas une
question rhétorique.
| > | expressemment qu'on peut, et qu'on a le choix entre plusieurs
| > | versions. (En fait, les mallocs de Sun vont plus loins, en ce
| > | qu'ils offrent des sémantiques différentes, au moins dans le cas
| > | de BSD malloc.)
| Plus important, évidemment, c'est le fait que dans la pratique, on
| est amené à remplacer malloc prèsque toujours, au moins lors des
| tests. De même qu'on modifie pas mal d'autres choses afin de les
| instrumenter. Et qu'un compilateur qui ne le permettra pas ne
| servira pas.
c'est une prédiction estampillée pacorabane ? Parce que GCC fait déjà
pas mal de suppositions découlant des spécifications de C et C++ pour
les fonctions bibliothèques, et il survit.
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
c'est une prédiction estampillée pacorabane ? Parce que GCC fait déjà
pas mal de suppositions découlant des spécifications de C et C++ pour
les fonctions bibliothèques, et il survit.
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
c'est une prédiction estampillée pacorabane ? Parce que GCC fait déjà
pas mal de suppositions découlant des spécifications de C et C++ pour
les fonctions bibliothèques, et il survit.
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
c'est une prédiction estampillée pacorabane ? Parce que GCC fait déjà
pas mal de suppositions découlant des spécifications de C et C++ pour
les fonctions bibliothèques, et il survit.
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
writes:
[...]
| > c'est une prédiction estampillée pacorabane ? Parce que GCC fait
| > déjà pas mal de suppositions découlant des spécifications de C et
| > C++ pour les fonctions bibliothèques, et il survit.
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
| C'est marrant, là dedans, on dirait que tu argues exactement ce que
| je suis en train d'arguer ici.
C'est marrant uniquement parce que tu crois que tu dois me convaincre
de l'utilité de la chose et, je pense, tu n'as visiblement pas pris le
temps de comprendre le sens de mes remarques et questions. J'ai mis
exprès les liens pour que tu te fasses une idée de ma
position. Effectivement, c'est marrant que tu t'en rendes compet :-/
[...]
| Ceci dit, je serais intéressé à entendre les optimisations que tu
| penses invalideras ma thèse, qui rendra le remplacement de malloc
| inopérable. Parce que dans la mesure où GCC utilise de toute façon
| un malloc qu'il ne connaît pas, je ne vois pas ce qu'il pourrait
| faire qui poserait un problème.
Dans le thread en question, j'ai argué, par exemple, que si GCC
commençait à faire ces transformations comme il veut, il va rendre
l'éxécution de certains codes difficiles à suivre (surtout ceux qui
utiliseraient un malloc traçant). Un coup ton malloc est appelé, un
coup il n'est pas appelé. Cela fait partie de « tu as ce que tu
mérites ».
kanze@gabi-soft.fr writes:
[...]
| > c'est une prédiction estampillée pacorabane ? Parce que GCC fait
| > déjà pas mal de suppositions découlant des spécifications de C et
| > C++ pour les fonctions bibliothèques, et il survit.
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
| C'est marrant, là dedans, on dirait que tu argues exactement ce que
| je suis en train d'arguer ici.
C'est marrant uniquement parce que tu crois que tu dois me convaincre
de l'utilité de la chose et, je pense, tu n'as visiblement pas pris le
temps de comprendre le sens de mes remarques et questions. J'ai mis
exprès les liens pour que tu te fasses une idée de ma
position. Effectivement, c'est marrant que tu t'en rendes compet :-/
[...]
| Ceci dit, je serais intéressé à entendre les optimisations que tu
| penses invalideras ma thèse, qui rendra le remplacement de malloc
| inopérable. Parce que dans la mesure où GCC utilise de toute façon
| un malloc qu'il ne connaît pas, je ne vois pas ce qu'il pourrait
| faire qui poserait un problème.
Dans le thread en question, j'ai argué, par exemple, que si GCC
commençait à faire ces transformations comme il veut, il va rendre
l'éxécution de certains codes difficiles à suivre (surtout ceux qui
utiliseraient un malloc traçant). Un coup ton malloc est appelé, un
coup il n'est pas appelé. Cela fait partie de « tu as ce que tu
mérites ».
writes:
[...]
| > c'est une prédiction estampillée pacorabane ? Parce que GCC fait
| > déjà pas mal de suppositions découlant des spécifications de C et
| > C++ pour les fonctions bibliothèques, et il survit.
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00560.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00590.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00592.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00631.html
| > http://gcc.gnu.org/ml/gcc-patches/2003-11/msg00663.html
| C'est marrant, là dedans, on dirait que tu argues exactement ce que
| je suis en train d'arguer ici.
C'est marrant uniquement parce que tu crois que tu dois me convaincre
de l'utilité de la chose et, je pense, tu n'as visiblement pas pris le
temps de comprendre le sens de mes remarques et questions. J'ai mis
exprès les liens pour que tu te fasses une idée de ma
position. Effectivement, c'est marrant que tu t'en rendes compet :-/
[...]
| Ceci dit, je serais intéressé à entendre les optimisations que tu
| penses invalideras ma thèse, qui rendra le remplacement de malloc
| inopérable. Parce que dans la mesure où GCC utilise de toute façon
| un malloc qu'il ne connaît pas, je ne vois pas ce qu'il pourrait
| faire qui poserait un problème.
Dans le thread en question, j'ai argué, par exemple, que si GCC
commençait à faire ces transformations comme il veut, il va rendre
l'éxécution de certains codes difficiles à suivre (surtout ceux qui
utiliseraient un malloc traçant). Un coup ton malloc est appelé, un
coup il n'est pas appelé. Cela fait partie de « tu as ce que tu
mérites ».