Suchergebnisse für Anfrage "compiler-bug"

1 die antwort

Initialisieren des Elements std :: array <char, x> im Konstruktor mit dem Zeichenfolgenliteral. GCC-Fehler?

Das folgende Beispiel initialisiert astd::array <char, N> Mitglied in einem Konstruktor, der ein Zeichenfolgenliteral verwendet, kompiliert nicht in GCC 4.8, sondern mit Clang 3.4. #include <iostream> #include <array> struct A { std::array<char, ...

6 die antwort

Rückgabetyp des bedingten Operators und zweiphasige Suche

Betrachten Sie das folgende Snippet: struct Base { }; struct Derived : Base { }; void f(Base &) { std::cout << "f(Base&)\n"; } template <class T = int> void g() { Derived d; f(T{} ? d : d); // 1 } void f(Derived &) { std::cout << ...

2 die antwort

Kann sizeof, das zweimal geschachtelt wurde, jemals ein abhängiger Ausdruck sein?

Ich habe festgestellt, dass gcc 5.0 den folgenden Code ablehnt, während clang 3.6 ihn akzeptiert. template<int n> struct I { typedef int Type; }; template<typename T> struct A { typedef I<sizeof(sizeof(T))>::Type Type; }; Die beiden Compiler ...

TOP-Veröffentlichungen

4 die antwort

Wie verhält es sich, NULL mit dem% s-Bezeichner von printf zu drucken?

4 die antwort

Im Freigabemodus ist das Verhalten des Codes nicht wie erwartet

Der folgende Code generiert im Debug- und Release-Modus (mit Visual Studio 2008) unterschiedliche Ergebnisse: int _tmain(int argc, _TCHAR* argv[]) { for( int i = 0; i < 17; i++ ) { int result = i * 16; if( result > 255 ) { result = 255; } ...

2 die antwort

std :: shared_ptr in einer std :: initializer_list scheint vorzeitig zerstört zu werden

Bearbeiten:Dies wird in der Tat durch einen Fehler in Visual Studio verursacht - und es wurde bereits behoben.Das Problem ist nach dem Anwenden nicht reproduzierbarUpdate 2zu Visual Studio (Release Candidate hier ...

2 die antwort

Warum wird dieser Haskell-Code mit -O langsamer ausgeführt?

Dieses Stück Haskell-Code läuftvie langsamer mit-O, aber-O sollte sein nicht gefährlich [https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/options-optimise.html#optimise-pkgs] . Kann mir jemand sagen, was passiert ist? Wenn es ...

6 die antwort

Sind explizite Konvertierungsoperatoren in geschweiften Initialisierungslisten zulässig?

Der folgende Code wird mit GCC 4.9.2 kompiliert, jedoch nicht mit Clang 3.5.0: #include <string> class Foo { public: explicit operator std::string() const; }; std::string bar{Foo{}}; // Works in g++, fails in clang++ std::string baz(Foo{}); // ...

6 die antwort

Clang und die binären Fold-Ausdrücke - Der Fluch des leeren Parameterpakets

Specificically Clang 3.6.0, das derzeit von Coliru gehostet wird. Alle diese Snippets werden aufgerufen von: int main() { foo(); std::cout << "\n----\n"; foo(1, 2, 3); }Der folgende Code: template <class... Args> void foo(Args... args) { ...

2 die antwort

Ein Fehler in der GCC-Implementierung von Bitfeldern

Arbeitet in C11 die folgende Struktur: