Я не думаю, что этот вопрос имеет смысл.
Если вы нуждаетесь в возвращенном значении, у вас нет возможности использовать void
для его ускорения up, даже если будет быстрее. Если вам не нужен результат , бесполезно возвращать его, поэтому просто не делайте этого. В любом случае выбор определяется потребностями вызывающего абонента.
Как правило, современные компиляторы не возвращают значение, а создают его на месте. Например, если вы пишете int sum = f(a,b);
, компилятор никогда не сделает временную функцию, а вместо этого сохранит результат в памяти sum
. Это означает, что нет никакой разницы во времени выполнения.
Похоже, именно для этого были созданы автоматические переменные ...?
Что не так с этим:
TESTS := block_test_A block_test_B block_test_C
SIM_FLAGS += -top $@
SIM_LOG = logs/$@.log
$(TESTS):
@mkdir -p logs
@echo Running TEST $@ with SIM_FLAGS=$(SIM_FLAGS) SIM_LOG=$(SIM_LOG)
$(MAKE) sim_design SIM_FLAGS="$(SIM_FLAGS)" SIM_LOG="$(SIM_LOG)"
Другие вещи:
[ 1110]shell
внутри рецепта. echo
в подоболочку с (...)