Open-Source Projects: Issueshttps://forge.ispras.ru/https://forge.ispras.ru/favicon.ico?16490126692019-12-20T11:57:43ZOpen-Source Projects
Redmine Castle - Task #9999 (Closed): ChangeLog -> ChangeLog.mdhttps://forge.ispras.ru/issues/99992019-12-20T11:57:43ZSergey Smolovsmolov@ispras.ru
<p>Rewrite ChangeLog file to Markdown format.</p> Castle - Task #9998 (Closed): README -> README.mdhttps://forge.ispras.ru/issues/99982019-12-20T11:57:11ZSergey Smolovsmolov@ispras.ru
<p>Rewrite README to Markdown format.</p> Fortress - Feature #9123 (Closed): calculate DataType for 'BVEXTRACT(i, i, x)' NodeOperation objectshttps://forge.ispras.ru/issues/91232018-07-18T10:16:35ZSergey Smolovsmolov@ispras.ru
<p>For '<abbr title="i, i, x">BVEXTRACT</abbr>' NodeOperation objects, where <em>i</em> is a non-NodeValue object, an attempt to calculate it's DataType causes the following exception:<br /><pre>
java.lang.IllegalStateException: Parameter is not a value: i
at ru.ispras.fortress.expression.NodeOperation.getParams(NodeOperation.java:260)
at ru.ispras.fortress.expression.NodeOperation.getDataType(NodeOperation.java:196)
</pre></p> Fortress - Bug #7557 (Closed): ConstCastTestCase: java.lang.AssertionError: Calculator failed to ...https://forge.ispras.ru/issues/75572016-09-07T16:54:35ZSergey Smolovsmolov@ispras.ru
<p>Probable bug in calculator, because ConstCastTestCase falls upon calling it.</p>
<pre>
Calculator failed to substitute result:
(AND (EQ (POWER y 3) z))
-> (LET () (AND (EQ (POWER y 3) z)))
-> (AND (EQ (POWER y 3) z))
-> (AND (EQ (POWER y 3) z))
java.lang.AssertionError: Calculator failed to substitute result:
(AND (EQ (POWER y 3) z))
-> (LET () (AND (EQ (POWER y 3) z)))
-> (AND (EQ (POWER y 3) z))
-> (AND (EQ (POWER y 3) z))
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.assertTrue(Assert.java:41)
at ru.ispras.fortress.solver.constraint.GenericSolverTestBase.checkResult(GenericSolverTestBase.java:210)
at ru.ispras.fortress.solver.constraint.GenericSolverTestBase.solveAndCheckResult(GenericSolverTestBase.java:174)
at ru.ispras.fortress.solver.constraint.GenericSolverTestBase.runSolverTests(GenericSolverTestBase.java:110)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
</pre> Castle - Task #6507 (Closed): build.gradle: get ANTLR jar from serverhttps://forge.ispras.ru/issues/65072016-01-14T08:53:59ZSergey Smolovsmolov@ispras.ru
<p>Предлагаю не хранить jar-файл компонента ANTLR непосредственно в репозитории проекта, а подгружать с сервера, как это сделано в Retrascope с библиотекой Antlrworks:</p>
<pre>
dependencies {
compile 'antlr:antlrworks:1.4.3'
...
compile files( "${project.projectDir}/share/jar/fortress.jar"
, ...
)
}
</pre>
<p>Для этого нужно проконсультироваться с Алексеем Демаковым, пусть положит ANTLR на forge.ispras.ru (если его ещё там нет).</p> Fortress - Bug #6352 (Closed): Transformer.standardize returns 'false' on (AND (EQ a 00) (NOT(EQ ...https://forge.ispras.ru/issues/63522015-10-15T15:10:10ZSergey Smolovsmolov@ispras.ru
<p>The <code>Transformer.standardize</code> method works incorrectly: on (AND (EQ a 00) (NOT (EQ a b 00))) constraint (where a and b are BIT_VECTOR(2)) it returns 'false'.</p>
<p>Use the <code>equalNotEqual</code> test at Transformer jUnit testcase to check that this bug is fixed.</p> Fortress - Bug #5461 (Closed): [arrays] Insufficient arrays supporthttps://forge.ispras.ru/issues/54612014-12-04T06:57:34ZSergey Smolovsmolov@ispras.ru
<p>Реализованная в проекте поддержка массивов имеет два существенных ограничения.</p>
<p>1) radix элементов массива должен совпадать с radix индексов;</p>
<p>2) метод getTypeRadix для MAP всегда возвращает 10.</p>
<p>Эти ограничения, в частности, не позволяют создавать массивы битовых векторов (очень распространенный объект в HDL-описаниях), а также получить для них radix элементов массива.</p>
<p>Проблема 1) частично решена ревизией r715 (теперь все массивы имеют radix=10 для индексов - см. блок TODO), что позволяет успешно обрабатывать код HDL-описаний. Если решение устраивает - можно блок TODO удалить. Если есть необходимость создавать массивы, у которых radix индексов не всегда равен 10, то нужно эту возможность учитывать.</p> Fortress - Bug #5453 (Closed): [arrays] Unexpected solver output: " (INSTQUEUE ((as const (Array ...https://forge.ispras.ru/issues/54532014-11-27T15:46:10ZSergey Smolovsmolov@ispras.ru
<p>При анализе HDL-описаний инструментом Retrascope иногда возникает ошибка со следующим логом:</p>
<p>[log]</p>
<p>java.lang.AssertionError: Unexpected solver output: " (INSTQUEUE ((as const (Array Int Int)) 0))" <br /> at ru.ispras.fortress.solver.engine.z3.Z3TextSolver.solve(Z3TextSolver.java:136)<br /> at ru.ispras.fortress.solver.constraint.ConstraintUtils.solve(ConstraintUtils.java:69)<br /> at ru.ispras.fortress.expression.ExprUtils.isSAT(ExprUtils.java:303)<br /> at ru.ispras.fortress.expression.ExprUtils.areCompatible(ExprUtils.java:288)</p>
<p>[/log]</p>
<p>Ошибка плавающая, т.е. пока не удалось так подобрать аргументы программы, чтобы сделать её воспроизводимой.</p> Fortress - Bug #5425 (Closed): [expression] java.lang.IllegalArgumentException: Expression is not...https://forge.ispras.ru/issues/54252014-11-12T20:29:04ZSergey Smolovsmolov@ispras.ru
<p>Дано: объект NodeOperation вида (BVEXTRACT D_IN 0 0), где D_IN - объект NodeVariable типа BIT_VECTOR (длины 9).</p>
<p>При попытке создать из него и прочих NodeOperation конъюнкцию с помощью метода ExprUtils.getConjunction возникает ошибка:</p>
<p>2014.11.12 23:21:04.076. ERROR: The exception has been encountered: java.lang.IllegalArgumentException: Expression is not a condition: (BVEXTRACT D_IN 0 0)<br /> at ru.ispras.fortress.expression.ExprUtils.checkAllConditions(ExprUtils.java:378)<br /> at ru.ispras.fortress.expression.ExprUtils.getConjunction(ExprUtils.java:189)<br />...</p>
<p>Причина ошибки состоит в том, что для данного выражения метод getDataType() возвращает UNKNOWN, хотя тут чистой воды BOOLEAN.</p> Fortress - Bug #4813 (Closed): [solver][constraint] Невозможно создавать тривиальные ограниченияhttps://forge.ispras.ru/issues/48132014-04-02T09:50:44ZSergey Smolovsmolov@ispras.ru
<p>Средствами Fortress нельзя сформировать следующий код на SMT-LIB:</p>
<p><code>(assert true)<br />(check-sat)<br />(exit)</code></p>
<p>Это происходит потому, что для создания Constraint требуется явно указать задействованные в нем переменные (которых в данном примере нет).</p>
<p>Необходимо поддерживать создание таких тривиальных ограничений.</p> C++TESK Testing ToolKit - Bug #4005 (Rejected): удалить пустой READMEhttps://forge.ispras.ru/issues/40052013-03-15T14:17:10ZSergey Smolovsmolov@ispras.ru
<p>Что делает пустой файл README в trunk основного проекта?</p> C++TESK Testing ToolKit - Bug #4004 (Closed): Из build'а пропал скрипт install-eclipse-plugin.shhttps://forge.ispras.ru/issues/40042013-03-14T17:36:57ZSergey Smolovsmolov@ispras.ru
<p>Т.е. в trunk проекта он есть, а в сборке не присутствует. <br />Без данного скрипта пропадает возможность установить C++TesK Eclipse plug-in из командной строки.</p>
<p>Просьба починить.</p> C++TESK Testing ToolKit - Bug #3805 (Closed): Ошибка в QuickReferencehttps://forge.ispras.ru/issues/38052012-12-18T08:19:48ZSergey Smolovsmolov@ispras.ru
<p>Файл C++TESK.QuickReference.ru.pdf, страница 10:</p>
<p>"CPPTESK_CONT_CAST_MESSAGE(класс_сообщения)."</p>
<p>Видимо, нужно исправить на</p>
<p>"CPPTESK_CONST_CAST_MESSAGE(класс_сообщения)."</p> C++TESK Testing ToolKit - Bug #3590 (Closed): C++TesK installation fails on OpenSUSE 12.2 x64https://forge.ispras.ru/issues/35902012-10-15T11:18:40ZSergey Smolovsmolov@ispras.ru
<p>Попробовал установить subj на OpenSUSE 12.2 x64. Системные требования были удовлетворены (в соответствии с C++TESK.InstallationGuide.ru.pdf), скрипт установки запускался с опцией --force-install-veritool (Veritool и Icarus Verilog предварительно установлены не были, подключение к сети, естественно, есть).</p>
<p>По-видимому, Icarus Verilog установился корректно, а Veritool - нет.</p>
<p>Лог установочного скрипта в аттаче.</p> CTESK - Bug #2494 (New): warning at build loghttps://forge.ispras.ru/issues/24942012-02-24T06:40:28ZSergey Smolovsmolov@ispras.ru
<p>При сборке возникает следующее предупреждение:</p>
<p>gcc -I. -g -ggdb -O0 -fno-inline -D_GLIBCXX_DEBUG -O -DATL_CLONE_DISABLE -DUSE_FOPEN64 -c c_tracer/c_tracer.c -o c_tracer/c_tracer.o<br />c_tracer/c_tracer.c: In function ‘addTraceToFile’:<br />c_tracer/c_tracer.c:117:7: warning: assignment makes pointer from integer without a cast</p>
<p>Сборка завершается корректно, так что это скорее небольшой досадный недочет.</p>