2016-03-31 23 views
8

I comportamenti definiti dall'implementazione in C sono comportamenti non specificati per i quali ciascuna implementazione conforme deve documentare la propria scelta.(Dove) Clang documenta il comportamento definito dall'implementazione?

Ho trovato tali documentazioni facilmente per gcc here o Microsoft C here, ma non riesco a trovare alcuna documentazione di questo tipo per clang.

Sto cercando sbagliato o non c'è niente del genere?

risposta

4

Questo ticket https://bugs.llvm.org/show_bug.cgi?id=11272 è ancora aperto (per molti anni) quindi sembra che clang non specifichi esplicitamente il comportamento definito dall'implementazione.

Per la maggior parte dei casi, scommetto che è lo stesso di GCC.

+0

Quindi clang non è un compilatore C conforme e ancora peggio di Visual Studio? Oh che brucia. Nemmeno Borland Turbo C del 1990 è peggiore di Visual Studio ... Termine normativo: 3.4.1 ** comportamento definito dall'implementazione ** comportamento non specificato in cui ogni implementazione documenta come viene effettuata la scelta. – Lundin

+0

@Lundin: Sì, la mancanza di documentazione lo rende non conforme. Non sarei d'accordo sul fatto che ciò lo rende "anche peggiore di Visual Studio". (Anche se non ho usato VS abbastanza per commentare sulla sua qualità.) –

Problemi correlati