The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск набора компиляторов GCC 7.3

25.01.2018 20:46

Доступен корректирующий релиз набора компиляторов GCC 7.3, в котором проведена работа по исправлению ошибок, регрессивных изменений и проблем с совместимостью. По сравнению с прошлым обновлением отмечено 99 исправлений, в основном связанных с устранением регрессивных изменений. Отдельно выделяется добавление опций ("-mindirect-branch", "-mfunction-return", "-mindirect-branch-register") для генерации последовательностей инструкций, исключающих вовлечение механизма спекулятивного выполнения для косвенных переходов. Сборка приложений с представленными опциями позволяет избежать проявления второго варианта уязвимости Spectre (CVE 2017-5715) на системах x86 и powerpc.

Напомним, что начиная с ветки GCC 5.x в проекте внедрена новая схема нумерации выпусков: версия x.0 используется в процессе разработки, корректирующие выпуски формируются с номерами x.2.0, x.3.0 и т.д. Новые возможности развиваются в экспериментальной ветке GCC 8.0, на базе которой будет сформирован следующий значительный релиз GCC 8.1.

  1. Главная ссылка к новости (https://gcc.gnu.org/ml/gcc-ann...)
  2. OpenNews: Релиз набора компиляторов GCC 7
  3. OpenNews: Ошибка в GCC привела к игнорированию режима выявления проблем с форматированием строк
  4. OpenNews: В состав GCC одобрено включение языка программирования D
  5. OpenNews: Для GCC представлен бэкенд c реализацией WebAssembly
  6. OpenNews: GCC на пути удаления компилятора для Java
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/47963-gcc
Ключевые слова: gcc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (72) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 20:57, 25/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Друзя, а будет порт этих опий в старые компиляторы? Хочу CentOS 6.10, в которых весь юерспейс пересобран с этими опциями
     
     
  • 2.2, iZEN (ok), 21:10, 25/01/2018 [^] [^^] [^^^] [ответить]  
  • –12 +/
    А смысл? Вот GCC 8.0 для сборки и работы FreeBSD с ПО из портов - это гораздо круче, чем, допустим, шланг. Смысл - в объёме действительно полезного кода и скорости его работы. Незачем греть воздух и растрачивать процессорные гигагерцы.
     
     
  • 3.4, Crazy Alex (ok), 21:18, 25/01/2018 [^] [^^] [^^^] [ответить]  
  • +15 +/
    Можно подумать, во FreeBSD есть вообще какой-то смысл
     
     
  • 4.13, Аноним (-), 00:56, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +3 +/
    конечно есть, хорошая алтернатива
     
     
  • 5.14, Аноним (-), 01:13, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Даже биткоины нужнее, чем эта альтернатива.
    DragonFlyBSD конечно еще можно вспомнить...
     
     
  • 6.22, Аноним (-), 10:00, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Кстати, DragonFlyBSD более привлекательная альтернатива, чем FreeBSD.
     
     
  • 7.49, Аноним (-), 18:35, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Согласен, но не в коем случае не FreeBSD.
    Все эти проекты разошлись в разные стороны NetBSD(оптимизации роутинга и еще там заточки сети), OpenBSD (секюрность/качество), FreeBSD (попса/производительность и число установок)... у каждого свои
     
  • 7.50, iZEN (ok), 20:10, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Кстати, DragonFlyBSD более привлекательная альтернатива, чем FreeBSD.

    Для студентов - да. Для преподавателей - уже нет.

     
  • 5.17, Аноним (-), 03:51, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Некоторые компоненты из проекта OpenBSD действительно хороши и нужны.
     
  • 2.3, Crazy Alex (ok), 21:18, 25/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Должен, по идее, как минимум - силами RedHat. RHEL6 в поддержке же ещё
     
  • 2.43, Аноним (-), 17:33, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В 4.8 есть (RHEL 7, SLE 12), к 4.9 подходит.

    Для остальных - обращайся в службу поддержки своего дистрибутива

     
  • 2.69, 0x0 (?), 23:34, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Точно трудно сказать: нужно следить за разработкой интересующих дистрибутивов. Например, на Федоре почти сразу портировали ещё в версию gcc-7.2.1, но в репозиторий пока ничего не попало (довольно критические наборы пакетов требуют более тщательной и длительной проверки :)

    https://koji.fedoraproject.org/koji/buildinfo?buildID=1017749

     

  • 1.6, Дуплик (ok), 22:13, 25/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –17 +/
    Когда GCC догонит CLang/LLVM по скорости?
     
     
  • 2.8, Аноним (-), 22:45, 25/01/2018 [^] [^^] [^^^] [ответить]  
  • +35 +/
    Уж точно не раньше, чем clang обгонит gcc.
     
  • 2.24, Клыкастый (ok), 10:21, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    как троллит, как троллит... ты хоть пиши по скорости чего, пруфы там и все дела...
     
  • 2.27, Аноним (-), 10:44, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Теперь всё понятно, чем ты Qt и приложения на Qt собираешь, что всё падает.
     

  • 1.9, Андрей (??), 22:48, 25/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > позволяет избежать проявления второго варианта уязвимости Spectre (CVE 2017-5715) на системах x86 и powerpc.

    А так много пользователей powerpc? Для ARM было бы важнее. Хотя гугл забросил GCC, так что да, неважно. А как там с этим у clang?

     
     
  • 2.20, Аноним (-), 09:04, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    а кто из ARM в составе комитета по gcc? а от powerpc - представители IBM.
    вот вам и ответ..
     
  • 2.28, Аноним (-), 11:26, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Зато они готовы заплатить за устранение уязвимостей:
    In 2003, BAE SYSTEMS Platform Solutions delivered the Vehicle-Management Computer for the F-35 fighter jet. This platform consists of dual PowerPCs made by Freescale in a triple redundant setup
     
  • 2.30, freehck (ok), 12:06, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Хотя гугл забросил GCC, так что да, неважно.

    Так забросили, что патчи retpoline для противодействия Spectre сделали в том числе и для GCC.

     
     
  • 3.42, Андрей (??), 16:04, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Значит, забросили gcc за одним исключением: Си всё ещё нужен им для сборки ядра.
     
  • 2.51, iZEN (ok), 20:13, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Clang уже может генерировать код для powerpc?


     
     
  • 3.62, пох (?), 11:36, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Clang уже может генерировать код для powerpc?

    "уже" может. С версии 4 как минимум.
    Но твоя bsd им не соберется. Патамушна ненужна.

     
  • 2.75, Аноним (-), 17:32, 30/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > А так много пользователей powerpc? Для ARM было бы важнее.

    PowerPC почти все с OoO, а большинство телефонных ARMов и проч - без OoO. Кортексы типа A53 проблеме не подвержены.

    > Хотя гугл забросил GCC, так что да, неважно. А как там с этим у clang?

    Странно. Чем же они ядра для своего ведроида компилят тогда? Учитывая что прожект билдовки ядра шлангом ни шатко ни валко прозябает уже лет пять.

     

  • 1.10, Аноним (-), 23:18, 25/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    а как там __builtin_load_no_speculate() ?
     
  • 1.11, Аноним (-), 23:52, 25/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    GCC бинари и юзерспейс станет еще толще и прожорливее?
     
     
  • 2.23, Аноним (-), 10:05, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Откуда следует? Если бы это было так, то Торвальдс выкатил бы свой палец разрабам GCC.
     
     
  • 3.70, Аноним (-), 12:10, 28/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Ох уж эти молящиеся на палец Торвальдса.
     
     
  • 4.73, Вареник (?), 07:39, 29/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Культ личности. "Про Торвальдсе такого не было!"
     
  • 3.77, slump64 (ok), 10:57, 01/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Не выкатил бы.
     

  • 1.12, Аноним (-), 00:50, 26/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Подскажите кто знает как лечить сегфолты firefox 52 на gcc7?

    [Child 4597] ###!!! ABORT: Aborting on channel error

    ipc/glue/MessageChannel.cpp, line 2152
    ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 322

     
     
  • 2.16, qwfqwf (?), 02:43, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    lor
     
  • 2.32, Аноним (-), 13:05, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Подскажите кто знает как лечить сегфолты firefox 52 на gcc7?

    Для начала освоить gdb.

     
     
  • 3.34, Аноним (-), 13:11, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Для начала освоить gdb.

    Присоединяюсь. Пользоваться современным файрфоксом без отладчика стало совсем невозможно, к сожаленью :(

     
  • 3.38, Аноним (-), 14:43, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Я пока не понял как его запустить с отладочными символами.
    Когда беру релизную версию(mach package), то в финальном архиве отладочных символов не вижу(не видно название функций и названия файлов с номерами строк).
    Когда запускаю из каталога сборки, то он не показывает полный backtrace(bt full) — только в месте сегфолта.
     
     
  • 4.52, Аноним (-), 20:55, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Для gdb нужен софт собраный в режиме Debug (не Release), без выполнения strip. Емнип опции -O123 конфликтуют и удаляют отладочную информацию.
     
     
  • 5.54, Аноним (-), 00:14, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Емнип опции -O123 конфликтуют и удаляют отладочную информацию.

    Нет.

    1. Большинство (если не все) autotools проектов по умолчанию собираются с "-O2 -g".
    2. Отладочную информацию вырезает -s. -O* её не подразумевают.
    3. Кажется, я даже в мануалах (info gcc) gcc читал, что одновременное использование -O2 и -g не просто официально поддерживается, но и рекомендуется, поскольку это позволяет отлаживать баги, которые при -O0 могут не всплыть, но всплывут при релизной сборке с -O2.

     
     
  • 6.76, Аноним (-), 18:00, 30/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Ты можешь собрать с -O2, но потом в ряде мест в дебагере получишь в принципе съедобный на вид дебаг, но вот "value optimized out" может очень сильно испортить настроение, если optimized out что-то сюжетно интересное. И чтобы этого не было таки придется согласиться на -O0, отключив оптимизации. Т.е. дебаг оптимизнутого билда прокатить может, но - фифти-фифти.
     
  • 2.33, Аноним (-), 13:09, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В /dev/shm должно быть примонтировано tmpfs размером хотя бы в четверть гигабайта.

    У меня как-то было связано с этим, без этого бездумно выковырянный мозиллой из хрома (ipc/chromium/src/...) кусок приводил к похожим ошибкам. Лечится какой-то опцией в about:config, запрещающий инновационную многопроцессную модель (ДА, я говорю именно про 52 esr).

    Но у меня ошибка была и при сборке пятым gcc, и шестым. Возможно, у вас другая проблема?

     
     
  • 3.37, Аноним (-), 14:37, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это у меня как раз и выключено Disable e10s user_pref browser tabs remo... большой текст свёрнут, показать
     
     
  • 4.55, Аноним (-), 00:18, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > user_pref("browser.tabs.remote.autostart", false);
    > user_pref("browser.tabs.remote.autostart.2", false);

    Точно, эти!

    А на каких сайтах проблемы? В ближайшее время планирую пересобрать систему с gcc7, хотелось бы потом проверить, что вышло.

    > из-за отсутствия исключений в gcc7

    В каком смысле?

     
     
  • 5.58, Аноним (-), 02:44, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А на каких сайтах проблемы? В ближайшее время планирую пересобрать систему с gcc7, хотелось бы потом проверить, что вышло.

    Тут сразу падает на чистом профиле.
    https://www.ghacks.net/2017/11/13/customize-firefox-57-with-css/
    https://www.engineersgarage.com/articles/humidity-sensor

    Тут спустя некоторое время, спустя секунд 5.
    http://www.our-firefox.ru/kak-v-mozilla-firefox/noscript-dlya-firefox-nastroj


    > В каком смысле?

    Возможно чего напутал, но в лог сыпится много варнингов такого типа:

    warning: dynamic exception specifications are deprecated in C++11 [-Wdeprecated]

    https://bugzilla.mozilla.org/show_bug.cgi?id=1383919
    https://hg.mozilla.org/integration/autoland/rev/ae7e3082d862

     
     
  • 6.79, Аноним (-), 16:07, 24/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    В общем выяснил я откуда ноги ростут Собрал с отладочными символами, отключил з... большой текст свёрнут, показать
     
  • 5.59, Аноним (-), 02:54, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Еще тут падает, если открывать без блокировщиков и без приватного режима(в обычном).

    http://www.hexcolortool.com/

    Вообще, если активно гулять по интернету в поиске чего-либо, то обязательно где-нибудь может упасть. Сейчас сижу на firefox 52.6.0 собранный на gcc 7.2.1.

     

  • 1.15, RobotsCantPoop (?), 02:39, 26/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, принцип Интелнобыля и Фукуспектра применим ко всяким там модным облачным дедупликациям?
     
  • 1.18, Аноним (-), 06:05, 26/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не заметил когда шестой вышел, а они уже седьмой выпустили.
     
     
  • 2.19, Аноним (-), 08:15, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Уже можно хеллоуворлды для продакшена собирать :)
     
  • 2.21, Andrey Mitrofanov (?), 09:32, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Не заметил когда шестой вышел, а они уже седьмой выпустили.

    Не спать! https://gcc.gnu.org/develop.html#timeline

     

  • 1.25, Аноним (-), 10:29, 26/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    А они собираются делать поддержку OpenAAC, OpenCL так, чтобы при вычислениях на видеокарточках напрямую использовался KMS/GEM без использования Mesa? Ну там, свою рантайм-либу или ещё как.
     
     
  • 2.48, фывфыв (?), 18:06, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    А при чем здесь GCC?
     
     
  • 3.65, Аноним (-), 16:22, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    При том, что необходимый для этого нежирный, в отличие от всяких LLVMов, рантайм мог бы входить в состав GCC и разрабатываться этой же командой.
     

  • 1.29, Чупачупс (?), 11:53, 26/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    А C# под Linux оно умеет из исходников собирать?
     
     
  • 2.31, Аноним (-), 12:42, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    >C# под Linux

    Не нужно. Есть Java.

     
     
  • 3.36, Анамоним (?), 14:27, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > C#
    > Java

    Шило на мыло.

     
     
  • 4.41, Аноним (-), 15:07, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Не совсем. Java кроссплвтформенная. P. S пожалуйста не надо про кроссплатформенность C#...
     
     
  • 5.46, Аноним (-), 17:40, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Пожалуйста,(да, в этом месте должна быть запятая) не надо про кроссплатформенность Java.
     
  • 5.56, Аноним (-), 00:20, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Не совсем Java кроссплвтформенная. P. S пожалуйста не надо про кроссплатформенность...

    fxd

     
  • 3.39, Аноним (-), 14:52, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    >Не нужно. Есть Java.

    Не нужно. Есть Python.

     
     
  • 4.40, Andrey Mitrofanov (?), 14:58, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    >>Не нужно. Есть Java.
    > Не нужно. Есть Python.

    Машины Тьюринга должно хватать всем.

     
     
  • 5.61, Тьюринг (?), 05:13, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    На релешках
     
  • 2.53, iZEN (ok), 23:07, 26/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > А C# под Linux оно умеет из исходников собирать?

    Система поддержки выполнения кода на C#, mono-4.8.1.0, с помощью GCC 6.4.0, 7.3.0 и 8.0.1.s20180121 на FreeBSD почему-то не собирается, но собирается с помощью системного LLVM/Clang 5.0.1. Зато openjdk8-8.152.16 собирается последними версиями GCC, но не может собраться LLVM/Clang (у меня, по крайней мере). Вот такая она, альтернативная реальность.

     
     
  • 3.57, Аноним (-), 00:22, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > openjdk8-8.152.16 собирается

    А если не секрет, зачем собирать openjdk из исходников?

    Оно при сборке требует блоб самого openjdk. Но после того, как я его скачал, я внезапно осознаю, что у меня УЖЕ есть openjdk, и не вижу смысла греть атмосферу :(

     
     
  • 4.60, dasrfatwet (?), 04:26, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Ему скучно по вечерам, нечем заняться вот он и страдает всякой ерундой.
     
  • 4.64, iZEN (ok), 13:25, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> openjdk8-8.152.16 собирается
    > А если не секрет, зачем собирать openjdk из исходников?

    Чтобы убедиться, что установленное ПО именно то, что собрано из исходников. И что какой-то дядя под видом блоба не подсунул тебе лажу, сказав, что она точно из вон тех исходников, что у тебя уже есть.

    > Оно при сборке требует блоб самого openjdk.

    Ага - предыдущей версии. Это называется bootstrap. После сборки он не нужен, его можно спокойно удалить, а для пересборки будет использоваться рабочий jdk.

    > Но после того, как я его скачал, я внезапно осознаю, что у меня УЖЕ есть openjdk, и не вижу смысла греть атмосферу :(

    Не разобрались, а претензии какие-то предъявляете.


     
     
  • 5.66, Аноним (-), 21:19, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > что какой-то дядя под видом блоба не подсунул тебе лажу

    Постойте-постойте. Если дядя подсунул лажу грамотно, то эта лажа будет добавлять себя (лажу) и в генерируемый код. И всё равно мы остаёмся с "неправильной" сборкой. Как вы проверяете, что сгенерированный байткод соответствует исходнику?

     
     
  • 6.67, iZEN (ok), 21:35, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    >> что какой-то дядя под видом блоба не подсунул тебе лажу
    > Постойте-постойте. Если дядя подсунул лажу грамотно, то эта лажа будет добавлять себя
    > (лажу) и в генерируемый код. И всё равно мы остаёмся с
    > "неправильной" сборкой.
    > Как вы проверяете, что сгенерированный байткод соответствует исходнику?

    Хороший вопрос. Использую несколько различных JDK, скачанных из разных источников и разными способами. Проверяю CRC.


     
     
  • 7.68, Аноним (-), 21:50, 27/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Использую несколько различных JDK

    Серьёзно? Ну тогда снимаю шляпу, без шуток. Думал, вы очередной "я скачал openjdk чтобы собрать openjdk, и теперь у меня openjdk, собранный мной, точно из оригинальных исходников".

    Не сочтите за троллинг, но можно список JDK? Знаю, что есть Оракловая, OpenJDK и какая-то от IBM. Есть ещё какие-то достаточно современные и юзабельные?

     
     
  • 8.71, iZEN (ok), 13:39, 28/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сертифицированные на совместимость с Java SE SDK - Oracle JDK - Oracle JRockit ... текст свёрнут, показать
     
     
  • 9.72, Аноним (-), 21:19, 28/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо ... текст свёрнут, показать
     
     
  • 10.78, Аноним (-), 23:21, 03/02/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Excelsior Jet - самый быстрая из них Это единственная JVM под ПК, которая испол... текст свёрнут, показать
     

  • 1.63, Hellraiser (??), 11:56, 27/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Сборка приложений с представленными опциями позволяет избежать проявления второго варианта уязвимости Spectre

    теперь интел окончательно морально разложится - зачем ему напрягаться, если дыры железа закрываются софтом

     
     
  • 2.74, kk (??), 13:29, 29/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    тогда он еще в 94 году разложился с ошибкой FDIV, тогда в компиляторах тоже чтото костылили по этому поводу
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру