- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
#include <type_traits>
struct TPred1 {};
struct TPred2 {};
template<typename P1, typename P2> struct TAnd1: P1, P2 {TAnd1(P1, P2) {}};
template<typename P1, typename P2> struct TAnd2: P1, P2 {TAnd2(P1, P2) {}};
template<typename T, T v> struct my_integral_constant {enum {value=v};};
template<class T, class From> struct my_is_base_of:
my_integral_constant<bool, __is_base_of(T, From)> {};
template<typename P1, typename P2> std::enable_if_t<
my_is_base_of<TPred1, P1>::value &&
my_is_base_of<TPred1, P2>::value,
TAnd1<P1, P2>> operator&&(P1 p1, P2 p2)
{return {p1, p2};}
template<typename P1, typename P2> std::enable_if_t<
my_is_base_of<TPred2, P1>::value &&
my_is_base_of<TPred2, P2>::value,
TAnd2<P1, P2>> operator&&(P1 p1, P2 p2)
{return {(p1, p2};}
template<typename T> struct is_callable
{
template<typename T1> struct dummy;
template<typename CheckType> static short check(dummy<decltype(
std::declval<std::remove_reference_t<CheckType>>()())>*);
template<typename CheckType> static char check(...);
enum: bool {value = sizeof(check<T>(nullptr)) == sizeof(short)};
};
struct IntellisenseKiller
{
template<typename T, typename = std::enable_if_t<
std::is_function<T>::value &&
is_callable<T>::value
>> IntellisenseKiller(const T&) {}
IntellisenseKiller(bool) {}
};
IntellisenseKiller eat4GbRam = true;
Обнаружился ещё один способ превратить Visual Studio 2017 в тормозной, пожирающий 4 ГБ оперативы, блокнот с подсветкой синтаксиса.
Это минимальный пример, который я выделил из своей библиотеки и порезал всё, что не вызывает баг. Вроде бы не связанные между собой куски кода, но глюки студии вызывают только вместе. Целый день потратил на поиск причины глюка.
Случайно обнаружил, что длина получившегося фрагмента кода 42 строки. Я не подгонял, честно. Так что можно сказать, что ошибка в 42 строке. Без этой строки Intellisense заработает.
j123123 13.07.2017 01:38 # −1
roman-kashitsyn 13.07.2017 13:06 # −1
Вот именно, там из коробки даже посветка долбанутого C++ синтаксиса толком не работает, не то что "Intellisense".
Зато быстро.
j123123 13.07.2017 13:15 # 0
> Ну а уж за дурацкий синтаксис C++ вообще Страусу отдельное огромное спасибо. Мало других таких языков, для которых парсер написать - это подвиг, достойный прижизненного конного памятника в полный рост.
sos 13.07.2017 01:42 # 0
AnalPerOral 13.07.2017 04:35 # 0
sos 13.07.2017 12:44 # −1
inho 13.07.2017 21:13 # −1
j123123 15.07.2017 05:23 # +3
https://www.infoq.com/news/2016/01/VS-64-bit
https://blogs.msdn.microsoft.com/ricom/2015/12/29/revisiting-64-bit-ness-in-visual-studio-and-elsewhere/
У Github Atom уже нет таких архитектурных ограничений, и выжрать он может побольше
inkanus-gray 15.07.2017 14:12 # +1
3.14159265 12.01.2018 05:11 # 0
Я тоже так считаю. Сегмент 32 + смещение 32.
PAE во все поля. far не нужен.
Хоть как-то остудит пыл быдлокодеров пытающихся сожрать всю оперативу.
3.14159265 12.01.2018 05:16 # 0
Типичные крестопроблемы с крестошаблонной крестопитушнёй.
Подсветка нормально не работает - ✔
Обычная компиляция адски тупит и неистово жрёт память - ✔
Вполне реальная и компилируемая программа в 42 строки валит IDE - ✔
inho 12.01.2018 10:04 # +1
COWuTEJIbTBOEuMAMKu 12.01.2018 13:19 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:33 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:35 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
Stallman 12.01.2018 16:36 # 0
COWuTEJIbTBOEuMAMKu 12.01.2018 17:16 # 0