Opened 6 years ago
Closed 6 years ago
#284 closed ожидаются исправления (задача сдана)
Home assignment #4
Reported by: | Nicholas Kapralov | Owned by: | rutsky,grabovoy.philipp |
---|---|---|---|
Priority: | проверка | Milestone: | ha4-milestone2 |
Component: | HA#4 function | Version: | 1.0 |
Keywords: | Cc: |
Description
Здравствуйте!
Проверьте, пожалуйста, мою реализацию fn::function, в smoke-тесте проходят все assert'ы, кроме implementation-defined.
Изначально закоммитил файл до первого дедлайна, но не смог сразу найти ошибку с освобождением памяти в деструкторе, только сейчас разобрался и заменил указатель на std::shared_ptr.
С уважением,
Николай.
Change History (19)
comment:1 Changed 6 years ago by
Component: | HA#1 matrices → HA#4 function |
---|
comment:2 Changed 6 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
comment:3 Changed 6 years ago by
Tested revision 711 by kapralov.nikolaj.
Smoke tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:4 Changed 6 years ago by
Tested revision 711 by kapralov.nikolaj.
Smoke tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:5 Changed 6 years ago by
Tested revision 711 by kapralov.nikolaj.
Main tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:6 Changed 6 years ago by
Tested revision 711 by kapralov.nikolaj.
Main tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:7 Changed 6 years ago by
Tested revision 711 by kapralov.nikolaj.
Main tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:8 Changed 6 years ago by
Tested revision 711 by kapralov.nikolaj.
Main tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:9 Changed 6 years ago by
Николай, исправьте, пожалуйста, ваше решение, чтобы оно проходило автотесты.
Тест run_functor_copied.cpp
проверяет, что function
хранит копию функтора (как это делает std::function
). Вы используете std::shared_ptr
и можете хранить один и тот же функтор в нескольких function
--- исправьте, пожалуйста.
comment:10 Changed 6 years ago by
К сожалению, пока ещё не разобрался, как это сделать, но стараюсь сделать это как можно скорее.
comment:11 Changed 6 years ago by
Tested revision 791 by kapralov.nikolaj.
All tests passed. Good job!
comment:12 Changed 6 years ago by
Type: | ожидаются исправления → ожидается проверка |
---|
comment:13 Changed 6 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
Tested revision 791 by kapralov.nikolaj.
Main tests
test | stage | result | info | log |
---|---|---|---|---|
SUCCESS | ||||
FAILURE | exit code 139 | |||
Common header used in some tests: common.h
comment:14 Changed 6 years ago by
Milestone: | ha4-milestone1 → ha4-milestone2 |
---|
Замечания:
- Бросайте исключение по *новому* значению:
namespace details { using fn::bad_function_call; bad_function_call bfc_exception; } ... //throw details::bfc_exception; throw bad_function_call();
Это исключение "легковесное" и нет ничего страшного создавать новый экземпляр каждый раз.
Сейчас вы создаёте экземпляр исключения с внешней линковкой, и программа не слинкуется, если ваш заголовочный файл будет использоваться в нескольких единицах трансляции.
comment:15 Changed 6 years ago by
Tested revision 798 by kapralov.nikolaj.
Smoke tests
test | stage | result | info | log |
---|---|---|---|---|
FAILURE | ||||
Common header used in some tests: common.h
comment:16 Changed 6 years ago by
Страж включения должен оборачивать весь файл, включая включения других заголовочный файлов:
#include <exception> #include <iostream> #ifndef FN #define FN
Касательно падающего в данный момент теста --- похоже, что вы удалили большую часть своего решения в последнем коммите (но так и не исправили замечание про bfc_exception
).
Удостоверьтесь, что вы закоммитили что нужно.
comment:17 Changed 6 years ago by
Tested revision 806 by kapralov.nikolaj.
All tests passed. Good job!
comment:18 Changed 6 years ago by
Действительно, нашёлся какой-то старый файл с тем же именем, недоглядел, извините. В актуальной версии стражи включения на своих местах, спасибо за помощь.
Tested revision 604 by kapralov.nikolaj.
Smoke tests
test
stage
result
info
log
run_function_smoke_test.cpp
run_function_smoke_test-gcc62.log
exit code 139
run_function_smoke_test-run.log
Common header used in some tests: common.h