Оптимизирует ли golang компилятор пустые функции?
Я надеюсь удалить строку кода журнала отладки из main. go при построении производства
main. go
func main() {
logging.DebugLog("hey %d", 123)
}
Режим отладки,
// +build dev
package logging
import (
"fmt"
)
func DebugLog(pattern string, args... interface{}) {
msg := fmt.Sprintf(pattern, args...)
fmt.Printf("debug: %s\n", msg)
}
Режим производства,
// +build !dev
package logging
import (
"fmt"
)
func DebugLog(pattern string, args... interface{}) {}
Компилятор golang удаляет строку функции DebugLog из основной функции во время компиляции? или просто уйти и выполнить во время выполнения?