aboutsummaryrefslogtreecommitdiff
path: root/content/gccgo-in-gcc-471.article
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2020-03-09 23:54:35 -0400
committerRuss Cox <rsc@golang.org>2020-03-17 20:58:37 +0000
commitaf5018f64e406aaa646dae066f28de57321ea5ce (patch)
tree8db7b1f049d83d215fa9abf68851efce7b5ccadb /content/gccgo-in-gcc-471.article
parent86e424fac66fa90ddcb7e8d7febd4c2b07d7c59e (diff)
content: convert to Markdown-enabled present inputs
Converted blog to Markdown-enabled present (CL 222846) using present2md (CL 222847). For golang/go#33955. Change-Id: Ib39fa1ddd9a46f9c7a62a2ca7b96e117635553e8 Reviewed-on: https://go-review.googlesource.com/c/blog/+/222848 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Andrew Bonventre <andybons@golang.org>
Diffstat (limited to 'content/gccgo-in-gcc-471.article')
-rw-r--r--content/gccgo-in-gcc-471.article11
1 files changed, 6 insertions, 5 deletions
diff --git a/content/gccgo-in-gcc-471.article b/content/gccgo-in-gcc-471.article
index 6c90a93..a11a21a 100644
--- a/content/gccgo-in-gcc-471.article
+++ b/content/gccgo-in-gcc-471.article
@@ -1,12 +1,13 @@
-Gccgo in GCC 4.7.1
+# Gccgo in GCC 4.7.1
11 Jul 2012
Tags: release
+Summary: The Go language has always been defined by a [spec](https://golang.org/ref/spec), not an implementation. The Go team has written two different compilers that implement that spec: gc and gccgo. Having two different implementations helps ensure that the spec is complete and correct: when the compilers disagree, we fix the spec, and change one or both compilers accordingly. Gc is the original compiler, and the go tool uses it by default. Gccgo is a different implementation with a different focus, and in this post we’ll take a closer look at it.
Ian Lance Taylor
-* Introduction
+##
-The Go language has always been defined by a [[https://golang.org/ref/spec][spec]],
+The Go language has always been defined by a [spec](https://golang.org/ref/spec),
not an implementation.
The Go team has written two different compilers that implement that spec: gc and gccgo.
Having two different implementations helps ensure that the spec is complete and correct:
@@ -53,13 +54,13 @@ may run past the end of the stack and crash the program).
Gccgo distributions do not yet include a version of the go command.
However, if you install the go command from a standard Go release,
it already supports gccgo via the `-compiler` option:
-go build `-compiler`gccgo`myprog`.
+go build `-compiler gccgo myprog`.
The tools used for calls between Go and C/C++,
cgo and SWIG, also support gccgo.
We have put the Go frontend under the same BSD license as the rest of the Go
tools. You can download the source code for the frontend at the
-[[https://github.com/golang/gofrontend][gofrontend project]].
+[gofrontend project](https://github.com/golang/gofrontend).
Note that when the Go frontend is linked with the GCC backend to make gccgo,
GCC’s GPL license takes precedence.