Is there a way to know how GO bootstraps its library, I mean starting at:

./cmd/dist/dist bootstrap $buildall $GO_DISTFLAGS -v # builds go_bootstrap
# Delay move of dist tool to now, because bootstrap may clear tool 
directory.
mv cmd/dist/dist "$GOTOOLDIR"/dist
"$GOTOOLDIR"/go_bootstrap clean -i std
echo

if [ "$GOHOSTARCH" != "$GOARCH" -o "$GOHOSTOS" != "$GOOS" ]; then
echo "# Building packages and commands for host, $GOHOSTOS/$GOHOSTARCH."
GOOS=$GOHOSTOS GOARCH=$GOHOSTARCH \
"$GOTOOLDIR"/go_bootstrap install -ccflags "$GO_CCFLAGS" -gcflags 
"$GO_GCFLAGS" -ldflags "$GO_LDFLAGS" -v std
echo
fi

echo "# Building packages and commands for $GOOS/$GOARCH."
"$GOTOOLDIR"/go_bootstrap install $GO_FLAGS -ccflags "$GO_CCFLAGS" -gcflags 
"$GO_GCFLAGS" -ldflags "$GO_LDFLAGS" -v std
echo

rm -f "$GOTOOLDIR"/go_bootstrap

if [ "$1" != "--no-banner" ]; then
"$GOTOOLDIR"/dist banner
fi

I see ccflags etc... but I mean: can you confirm or give me a way to know 
what are exactly all the c flags in action.
The first step, creating the bootstrap was easy. But bootstrap is a bit 
obscure.
Oterwise c2ast did not suffer from analysing GO bootstrap code -;

Ah, result of the 1st step (i.e. the one that generates the bootstrap) is:

cmd/dist/buf.c(218)     strpcmp: Names beginning with 'str', 'mem', or 
'wcs' followed by a lowercase letter are reserved for additional string and 
array functions
cmd/dist/build.c(25)      tooldir: Names that begin with either 'is' or 
'to' followed by a lowercase letter may be used for additional character 
testing and conversion functions.
cmd/dist/build.c(612)     islib: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.
cmd/dist/build.c(612)     ispkg: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.
cmd/dist/build.c(612)     isgo: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.
cmd/dist/goc2c.c(127)     structround: Names beginning with 'str', 'mem', 
or 'wcs' followed by a lowercase letter are reserved for additional string 
and array functions
cmd/dist/goc2c.c(284)     token: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.
cmd/dist/goc2c.c(294)     token: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.
cmd/dist/goc2c.c(389)     token: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.
cmd/dist/goc2c.c(437)     token: Names that begin with either 'is' or 'to' 
followed by a lowercase letter may be used for additional character testing 
and conversion functions.

Thanks / JD.

Le mercredi 5 mars 2014 10:24:56 UTC+1, rns a écrit :
>
> There is that presentation [1] to be held at GopherCon; at first sight, 
> running 
> cscan/c2ast<https://github.com/jddurand/MarpaX-Languages-C-AST/tree/master/bin>like
>  Jean Damien did 
> with perl source 
> code<https://groups.google.com/d/msg/marpa-parser/QkcRarH1N7k/VJWmdfICNsQJ>and
>  blogging or otherwise letting know about it looks like a good thing to 
> show what Marpa can do.
>
> [1] Go from C to Go
> Friday, 25 Apr 8:30am (30m)Russ Cox - Engineer at Google
>
> It's time for the Go compilers to be written in Go, not in C. I'll talk 
> about the unusual process the Go team has adopted to make that happen: 
> mechanical conversion of the existing C compilers into idiomatic Go code.
>
> http://www.gophercon.com/schedule/#ross_cox
>

-- 
You received this message because you are subscribed to the Google Groups 
"marpa parser" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to