Описание тега compiler-bug
По вопросам о (подозреваемом) некорректном поведении компилятора. Используйте с соответствующим языковым тегом и, если применимо, с тегом для рассматриваемого компилятора.
3
ответа
Возможная ошибка в Java 8 Обновление 45 в Windows 8
Этот код берет входное изображение и создает выходное изображение, размер которого в два раза больше. Первые четыре строки во внутреннем цикле записывают четыре копии оригинала одинакового размера, последние четыре строки должны перезаписывать мален…
27 май '15 в 15:56
1
ответ
Ошибки valgrind при сборке с встраиванием, сделанные g++5 - ошибка в valgrind или g++5?
Точные версии g++ и valgrind: g++-5 (Ubuntu 5.2.1-23ubuntu1~12.04) 5.2.1 20151031 valgrind-3.7.0 Я не стал вдаваться в то, какой именно флаг делает это (finline-small-functions/findirect-inlining/finline-functions/finline-functions-вызвано-единожды …
27 фев '16 в 14:48
1
ответ
Быстрая оценка @autoclosure под влиянием аннотаций типов? (ошибка компилятора?)
Сегодня я снова играл со Свифтом и нуждался в undefined() функция. В основном функция, которая может быть любого типа, которую вы хотите, но сбои, когда она фактически запускается / оценивается. Это полезно, если вы еще не успели реализовать определ…
17 янв '15 в 20:44
2
ответа
Аргумент шаблона и собственный аргумент шаблона содержат типы с одинаковыми именами; как я могу ссылаться на второй в сигнатуре функции?
Рассмотрим этот код: template<typename T> struct Foo { typedef T t_type; }; template<typename T> struct Bar { typedef T t_type; }; template<typename U> auto f() -> typename U::t_type::t_type { return typename U::t_type::t_type()…
24 окт '14 в 12:57
3
ответа
Инициализация нуля массива C++: это ошибка или это правильно?
Примечание. Мы говорим о (предположительно) C++98-совместимых компиляторах здесь. Это не вопрос C++11. У нас странное поведение в одном из наших компиляторов, и мы не уверены, что это нормально или это ошибка компилятора: // This struct has a defaul…
19 авг '13 в 07:58
1
ответ
Неоднозначность в перегрузке конструктора из-за std::function
Я хочу сделать две перегрузки конструктора некоторого класса следующим образом: foo(int, std::function<int(Tpoint, Tpoint)>); foo(int, std::function<int(Tpoint, Tpoint, std::vector<Tpoint>)>); При звонке у меня возникла проблема не…
12 фев '16 в 14:01
1
ответ
Почему gcc и clang выдают разные результаты для этой программы? (оператор преобразования против конструктора)
Программа: #include <stdio.h> struct bar_t { int value; template<typename T> bar_t (const T& t) : value { t } {} // edit: You can uncomment these if your compiler supports // guaranteed copy elision (c++17). Either way, it // doesn't…
18 май '17 в 22:07
3
ответа
Почему SFINAE портится при изменении места специализации шаблона класса? Это ошибка C++?
Следующий код дает ожидаемую ошибку компилятора ( Демо): 1 template<bool> struct Range; 2 3 template<int value, typename = Range<true> > struct Unique; 4 template<int value> struct Unique<value, Range<(value > 1)>…
06 мар '12 в 10:42
3
ответа
Стандартное поведение препроцессора C++
Я изучаю стандарт C++ на точное поведение препроцессора (мне нужно реализовать какой-то препроцессор C++). Из того, что я понимаю, приведенный ниже пример (чтобы помочь моему пониманию) должен быть верным: #define dds(x) f(x, #define f(a,b) a+b dds(…
23 мар '14 в 11:05
1
ответ
Почему этот код на Haskell работает медленнее с -O?
Этот фрагмент кода на Haskell работает намного медленнее -O, но -O должен быть неопасным. Кто-нибудь может сказать мне, что случилось? Если это имеет значение, это попытка решить эту проблему, и она использует бинарный поиск и постоянное дерево сегм…
02 апр '15 в 02:29
0
ответов
Возможная ошибка компилятора Visual Studio C++? Проблема с нетиповым параметром шаблона
Новый вопрос редактировать Эта ошибка, кажется, такая же, как эта: MSVC отклоняет следующий код: template <template <typename T, typename T::mytype x> class X> struct z {}; template <typename T, typename T::mytype xx> struct x {}; …
31 июл '14 в 21:27
3
ответа
Строковая интерполяция: ошибка в компиляторе C#?
string Test(bool @bool) => $"you're {@bool?"hired":"fired"} Have a nice day!"; Приведенный выше код приводит к ошибке компиляции. Но почему? Заметить, что string test = $"this {"is"} working";работает.
09 дек '18 в 10:14
1
ответ
Это ошибка в зависимом разрешении имен в MSVC?
На cppreference.com в качестве примера представлен следующий код, объясняющий разрешение зависимых имен: #include <iostream> void g(double) { std::cout << "g(double)\n"; } template<class T> struct S { void f() const { g(1); // "g" …
08 июн '16 в 12:59
2
ответа
Почему общие и неуниверсальные структуры обрабатываются по-разному при построении выражения, которое поднимает оператор == до нуля?
Это похоже на ошибку при поднятии до нуля операндов на общих структурах. Рассмотрим следующую фиктивную структуру, которая переопределяет operator==: struct MyStruct { private readonly int _value; public MyStruct(int val) { this._value = val; } publ…
28 май '13 в 17:18
1
ответ
VC++ SFINAE выдает ошибку C2070: "перегруженная функция": недопустимый размер операнда
Природа ошибки отличается от упомянутой в этой теме.Я пытаюсь реализовать способ SFINAE в среде VC++, которая находит, содержит ли класс член (метод) или нет. Ниже приведен упрощенный код для этого: template<typename Class> class HasMember_Met…
07 янв '14 в 12:33
1
ответ
Как значение, возвращаемое лямбда-выражением при использовании статической локальной ошибки в MSVC2017 15.9.3 с /std: C++17?
Приведенный ниже пример кода печатает значения из лямбда-функции, которая просто увеличивает и возвращает значение статической переменной локального счетчика. Это печатает 0,1 а также 2,3 как и ожидалось с gcc и clang с C++17. Но не в Visual Studio …
06 дек '18 в 22:21
2
ответа
Серьезные ошибки с поднятыми / обнуляемыми преобразованиями из int, позволяющими преобразование из десятичного числа
Я думаю, что этот вопрос принесет мне мгновенную славу здесь, на переполнении стека. Предположим, у вас есть следующий тип: // represents a decimal number with at most two decimal places after the period struct NumberFixedPoint2 { decimal number; //…
20 авг '13 в 18:55
2
ответа
Возможная ошибка компилятора в Visual C++ 2012 (x86)?
В настоящее время у меня возникают случайные ошибки с плавающей запятой при компиляции для целей x86 с использованием VC++ 11 (CTP Update 1). Посмотрите короткий пример "test.cpp" ниже, и скомпилируйте с помощью: cl /GL /O2 /EHsc test.cpp /link /MAC…
24 окт '12 в 15:02
1
ответ
Ошибка компиляции для параметра функции шаблона переменной
Я пытаюсь написать некоторый вспомогательный код переноса параметров, как показано ниже #include <type_traits> #include <string> struct test{}; namespace ns { struct test{}; } template<typename T> struct arg_wrapper; template<&g…
15 ноя '12 в 14:14
2
ответа
C++11 future.wait_for() всегда возвращает future_status::timeout
У меня есть программа на C++11, которая проверяет, является ли число простым. Есть будущий объект, который программа ожидает, чтобы быть готовым. После завершения программа сообщает, считает ли функция поставщика будущего объекта число простым. // f…
19 июн '14 в 07:26