Articles of compilateur construction

L’optimisation du compilateur peut-elle introduire des bogues?

Aujourd’hui, j’ai eu une discussion avec un de mes amis et nous avons débattu pendant quelques heures de l’optimisation du compilateur. J’ai défendu le point que parfois , une optimisation du compilateur peut introduire des bogues ou du moins un comportement indésirable. Mon ami était totalement en désaccord, disant que “les compilateurs sont construits par […]

Pourquoi les macros de préprocesseur sont-elles mauvaises et quelles sont les alternatives?

J’ai toujours demandé cela mais je n’ai jamais reçu de réponse vraiment bonne. Je pense que presque tous les programmeurs avant même d’écrire le premier “Hello World” avaient rencontré une phrase comme “la macro ne devrait jamais être utilisée”, “la macro est mauvaise” et ainsi de suite, ma question est: pourquoi? Avec le nouveau C […]

But de “let expression” (LetExpr) dans le compilateur Java?

Le compilateur Java semble prendre en charge let expressions let dans com.sun.tools.javac.tree.* ( LetExpr ). Un commentaire dans JCTree mentionne même une syntaxe (let int x = 3; in x+2) ce qui bien sûr n’est pas accepté par la grammaire du langage et rejeté dans une phase précédente du compilateur. Je m’interroge sur l’origine de […]

C est open source?

C’est probablement une question stupide, mais je m’interroge depuis un moment. Est-ce que C (ou tout autre langage de bas niveau, d’ailleurs) a même une source, ou le compilateur est-il la partie qui “fait tout le travail”, y compris l’parsing? Si oui, différents compilateurs ne pourraient-ils pas avoir des dialectes C différents? Où est-ce que […]

Pourquoi le compilateur C # autorise-t-il les énumérations vides?

J’ai accidentellement défini une énumération aujourd’hui qui ne contenait aucune valeur. Comme celui-ci par exemple: public enum MyConfusingEnum{} Le compilateur était très content de me laisser définir cela et le code a été construit avec succès. Maintenant, je ne peux évidemment pas utiliser cela au sens traditionnel puisque le code, .. var mySadComstackr = MyConfusingEnum; […]

Qt: impossible de trouver l’erreur -lGL

Je viens de réinstaller QtCreator, créé un nouveau projet ( Qt Application ) et obtenu ceci après la compilation: /usr/bin/ld: **cannot find -lGL** collect2: error: ld returned 1 exit status make: *** [untitled1] Error 1 18:07:41: The process “/usr/bin/make” exited with code 2. Error while building/deploying project untitled1 (kit: Desktop Qt 5.1.0 GCC 32bit) When […]

Comment créer une bibliothèque statique avec g ++?

Quelqu’un peut-il s’il vous plaît me dire comment créer une bibliothèque statique à partir d’un fichier .cpp et .hpp? Dois-je créer le .o et le .a? J’aimerais aussi savoir comment comstackr une bibliothèque statique et l’utiliser dans un autre code .cpp. J’ai header.cpp , header.hpp . Je voudrais créer header.a . Testez le header.a dans […]

Le compilateur gcc C est-il écrit en C lui-même?

Le compilateur gcc C est-il écrit en C lui-même? Ou est-ce écrit dans l’Assemblée? Si le compilateur est écrit en C, alors quel est le compilateur utilisé pour comstackr le code du compilateur?

Quelle est la différence entre l’arbre d’parsing et AST?

Sont-ils générés par différentes phases d’un processus de compilation? Ou sont-ils juste des noms différents pour la même chose?

Signification de l’erreur Android Studio: Le paramètre non annoté remplace le paramètre @NonNull

J’essaie Android Studio. Lors de la création d’un nouveau projet et de l’ajout d’une méthode onSaveInstanceState par défaut à la classe create MyActivity, lorsque j’essaie de valider le code sur Git, je reçois une erreur étrange que je ne comprends pas. Le code est le suivant: L’erreur que j’ai est la suivante: Si j’essaie de […]