func CreateProgram(lprog *loader.Program, mode ssa.BuilderMode) *ssa.Program {
	prog := ssa.NewProgram(lprog.Fset, mode)

	for _, info := range lprog.AllPackages {
		if info.TransitivelyErrorFree {
			prog.CreatePackage(info.Pkg, info.Files, &info.Info, info.Importable)
		}
	}

	return prog
}
func CreateProgram(lprog *loader.Program, mode ssa.BuilderMode) *ssa.Program {
	prog := ssa.NewProgram(lprog.Fset, mode)

	for _, info := range lprog.AllPackages {
		if info.TransitivelyErrorFree {
			prog.CreatePackage(info.Pkg, info.Files, &info.Info, info.Importable)
		}
	}

	return prog
}
func CreateProgram ( lprog * loader . Program , mode ssa . BuilderMode ) * ssa . Program { prog := ssa . NewProgram ( lprog . Fset , mode ) for _ , info := range lprog . AllPackages { if info . TransitivelyErrorFree { prog . CreatePackage ( info . Pkg , info . Files , & info . Info , info . Importable ) } } return prog }
// CreateProgram returns a new program in SSA form, given a program
// loaded from source.  An SSA package is created for each transitively
// error-free package of lprog.
//
// Code for bodies of functions is not built until Build is called
// on the result.
//
// mode controls diagnostics and checking during SSA construction.
//
CreateProgram returns a new program in SSA form given a program loaded from source . An SSA package is created for each transitively error - free package of lprog . Code for bodies of functions is not built until Build is called on the result . mode controls diagnostics and checking during SSA construction .