Оптимизация пустой функции в компиляторе glolang - PullRequest
0 голосов
/ 24 апреля 2020

Оптимизирует ли 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 из основной функции во время компиляции? или просто уйти и выполнить во время выполнения?

...