#168 closed ожидаются исправления (задача сдана)
Проверьте, пожалуйста, ДЗ #6
Reported by: | cherkasov.andrey | Owned by: | Vladimir Rutsky |
---|---|---|---|
Priority: | проверка | Milestone: | |
Component: | HA#6 bind | Version: | |
Keywords: | Cc: | a.y.cherkasov@… |
Description
Change History (8)
comment:1 Changed 7 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
comment:2 Changed 7 years ago by
Tested revision 1058 by cherkasov.andrey.
All tests passed. Good job!
comment:3 Changed 7 years ago by
Type: | ожидаются исправления → ожидается проверка |
---|
comment:4 Changed 7 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
Замечания:
Замечания:
- Объявляя таким образом placeholder-ы, вы нарушаете ODR при использовании
bind.hpp
в нескольких единицах трансляции:
Placeholder<1> _1; Placeholder<2> _2;
Попробуйте скомпилировать один выполняемый файл, слинкованный из двух cpp:
// part1.cpp #include "bind.hpp" int main() { }
// part2.cpp #include "bind.hpp"
$ g++ -Wall -std=c++14 part1.cpp part2.cpp /tmp/ccej5H9I.o:(.bss+0x0): multiple definition of `fn::_1' /tmp/ccC3BMNh.o:(.bss+0x0): first defined here /tmp/ccej5H9I.o:(.bss+0x1): multiple definition of `fn::_2' /tmp/ccC3BMNh.o:(.bss+0x1): first defined here collect2: error: ld returned 1 exit status
Исправьте, пожалуйста, в ближайшее время.
comment:5 Changed 7 years ago by
Tested revision 1062 by cherkasov.andrey.
All tests passed. Good job!
comment:6 Changed 7 years ago by
Андрей, __attribute__((unused))
это GCC специфичная вещь, используйте решение, допустимое Стандартом.
Например, вы можете использовать анонимный namespace, что эквивалентно вашему решению, но не приводит к предупреждениям.
Также вы можете сделать плейсхолдеры константными.
comment:7 Changed 7 years ago by
Resolution: | → задача сдана |
---|---|
Status: | new → closed |
Работа зачтена, но с минусом (вы не до конца исправили ошибку с плейсхолдерами, а все дедлайны прошли).
Tested revision 1057 by cherkasov.andrey.
Main tests
test
stage
result
info
log
comp_all_sufficient.cpp
gcc62
comp_all_sufficient-gcc62.log
clang
comp_include_guard.cpp
gcc62
comp_include_guard-gcc62.log
clang
comp_placeholders_linkage.cpp
gcc62
comp_placeholders_linkage-gcc62.log
clang
run_lvalue_store.cpp
gcc62
run_lvalue_store-gcc62.log
run
valgrind
run_lvalue_store-valgrind.log
gcc62-asan
run_lvalue_store-gcc62-asan.log
asan
clang-san
san
run_lvalue_store2.cpp
gcc62
run_lvalue_store2-gcc62.log
run
valgrind
run_lvalue_store2-valgrind.log
gcc62-asan
run_lvalue_store2-gcc62-asan.log
asan
clang-san
san
run_lvalue_store2_const.cpp
gcc62
run_lvalue_store2_const-gcc62.log
run
valgrind
run_lvalue_store2_const-valgrind.log
gcc62-asan
run_lvalue_store2_const-gcc62-asan.log
asan
clang-san
san
run_pass_rvalue.cpp
gcc62
run_pass_rvalue-gcc62.log
run
valgrind
run_pass_rvalue-valgrind.log
gcc62-asan
run_pass_rvalue-gcc62-asan.log
asan
clang-san
san
Common header used in some tests: common.h