| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
| |
comment should handle literal #, not # in evaluated text.
|
| |
|
|
|
|
|
|
| |
fix ninja test
err_error_in_recipe.mk
info.mk
strip.mk
warning.mk
|
| | |
|
| |
|
|
| |
use warnNoPrefix instead of fmt.Printf for warning message.
|
| |
|
|
|
| |
separete override_export.mk and create err_export_override.mk and
err_override_export.mk
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
merge ssvWriter into buffer
|
| | |
|
| |
|
|
| |
fix backslash_in_rule_command.mk
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
make most global things (makefileCache, symtab, stats, shellStats,
wildcardCache) concurrent safe.
|
| |
|
|
|
|
|
|
|
|
|
| |
benchmark old ns/op new ns/op delta
BenchmarkFuncPatsubst 2030 1102 -45.71%
benchmark old allocs new allocs delta
BenchmarkFuncPatsubst 9 1 -88.89%
benchmark old bytes new bytes delta
BenchmarkFuncPatsubst 297 32 -89.23%
|
| |
|
|
| |
no need to assign/restore call parameter
|
| |
|
|
| |
passing value to ...interface{} requires runtime.convT2E.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
conversion from value to interface is more expensive than
conversion from pointer to interface.
package main
import "testing"
type I interface {
String() string
}
type val struct {
s string
}
func (v val) String() string { return v.s }
type ptr struct {
s string
}
func (p *ptr) String() string { return p.s }
func BenchmarkT2IForValue(b *testing.B) {
var intf I
for i := 0; i < b.N; i++ {
intf = val{"abc"}
}
_ = intf
}
func BenchmarkT2IForPtr(b *testing.B) {
var intf I
for i := 0; i < b.N; i++ {
intf = &ptr{"abc"}
}
_ = intf
}
% go test -bench . a_test.go
testing: warning: no tests to run
PASS
BenchmarkT2IForValue 20000000 90.9 ns/op
BenchmarkT2IForPtr 20000000 76.8 ns/op
ok command-line-arguments 3.539s
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
if this option is given, it outputs trace json file
for chrome://tracing for makefile include traces.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ast.go:70:1: comment on exported type MaybeRuleAST should be of the form "MaybeRuleAST ..." (with optional leading article)
eval.go:241:1: comment on exported method Evaluator.EvaluateVar should be of the form "EvaluateVar ..."
eval.go:14:2: don't use ALL_CAPS in Go names; use CamelCase
eval.go:15:2: don't use ALL_CAPS in Go names; use CamelCase
eval.go:16:2: don't use ALL_CAPS in Go names; use CamelCase
eval.go:431:2: don't use underscores in Go names; var makefile_list should be makefileList
main.go:29:2: var loadJson should be loadJSON
main.go:30:2: var saveJson should be saveJSON
ninja.go:19:2: struct field ruleId should be ruleID
para.go:15:9: if block ends with a return statement, so drop this else and outdent its block
para_test.go:21:2: don't use underscores in Go names; var num_tasks should be numTasks
parser.go:713:1: error should be the last type when returning multiple items
serialize.go:20:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:21:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:22:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:23:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:24:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:25:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:26:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:27:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:28:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:29:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:30:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:31:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:32:2: don't use ALL_CAPS in Go names; use CamelCase
serialize.go:230:6: func DumpDepGraphAsJson should be DumpDepGraphAsJSON
serialize.go:553:6: func LoadDepGraphFromJson should be LoadDepGraphFromJSON
serialize.go:437:9: if block ends with a return statement, so drop this else and outdent its block
var.go:174:1: receiver name should not be an underscore
var.go:175:1: receiver name should not be an underscore
var.go:176:1: receiver name should not be an underscore
var.go:177:1: receiver name should not be an underscore
var.go:178:1: receiver name should not be an underscore
var.go:180:1: receiver name should not be an underscore
var.go:183:1: receiver name should not be an underscore
var.go:187:1: receiver name should not be an underscore
var.go:191:1: receiver name should not be an underscore
|
| |
|
|
| |
rename Log to Logf, since it takes format string in the first argument.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This flag will be used by Android build to ignore generated
.mk files.
|
| |
|
|
|
|
| |
use ioutil.ReadFile instead.
exists uses os.Stat and os.IsNotExist
|
| | |
|