2010-02-24 20 views

Répondre

2

Les analyseurs C++ sont difficiles pour construire.

Je ne peux pas parler avec expérience sur en utilisant grammaires C++ ANTLR. Here I discuss ce que j'ai appris en lisant les notes jointes à celle que j'ai vu sur le site ANTLR; en substance, l'auteur a produit une grammaire incomplète. Et c'était juste pour C++ 98. Cela fait un moment que j'ai regardé; il peut y avoir d'autres.

Notre DMS Software Reengineering Toolkit a un robust C++ front end.

Le lexer gère toutes les cochonneries pour ANSI, gcc3, MS Visual Studio 2008, y compris de grande précision nombres à virgule flottante, etc.

[EDIT: 12/2011. Maintenant, gère les directives C++ 11 et OpenMP]

[EDIT: 3/2015: gère maintenant C++ 14 dans les deux variantes GCC et MS. Avoir "juste" un analyseur n'est vraiment pas très utile. Au-delà de l'analyse syntaxique, notre frontal construit des ASTs, construit des tables de symboles précises (pour C++, c'est extrêmement difficile), effectue des analyses de flux fonction-local, et permet d'effectuer des transformations de programme, etc. Life After Parsing.

+3

J'ai vérifié votre site Web, il semble que vous ayez quelques outils sympas à des prix raisonnables, mais votre site Web pourrait faire un peu de travail à la fois dans la structure et l'aspect. –

+0

@Andre: toutes les remarques constructives que vous pourriez faire sont les bienvenues; nous sommes toujours intéressés à améliorer. S'il vous plaît mail à "[email protected]". –

+0

Comment votre projet se compare-t-il, disons, à [Clang] (http://clang.llvm.org/), qui fait tout ce que vous dites, gratuitement? Je plaisante, mais encore, intéressé par votre réponse! – rubenvb