]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: clean up TestStdcallAndCDeclCallbacks to have no warnings
authorAlex Brainman <alex.brainman@gmail.com>
Sun, 21 Dec 2014 23:30:43 +0000 (10:30 +1100)
committerAlex Brainman <alex.brainman@gmail.com>
Mon, 22 Dec 2014 00:31:57 +0000 (00:31 +0000)
Fixes #9188

Change-Id: Ifbf5d9fa78a4f4ceb7f92d42494fe37fa7878c45
Reviewed-on: https://go-review.googlesource.com/1930
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/runtime/syscall_windows_test.go

index ce8a9ec1ba9e974b9f270fa2f59c331b42df74ff..c372d2434dbf7eb3114377a598949b3f06954b4a 100644 (file)
@@ -271,7 +271,7 @@ func (f cbDLLFunc) buildOne(stdcall bool) string {
        typename := "t" + funcname
        p := make([]string, f)
        for i := range p {
-               p[i] = "void*"
+               p[i] = "uintptr_t"
        }
        params := strings.Join(p, ",")
        for i := range p {
@@ -280,9 +280,9 @@ func (f cbDLLFunc) buildOne(stdcall bool) string {
        args := strings.Join(p, ",")
        return fmt.Sprintf(`
 typedef void %s (*%s)(%s);
-void %s(%s f, void *n) {
-       int i;
-       for(i=0;i<(int)n;i++){
+void %s(%s f, uintptr_t n) {
+       uintptr_t i;
+       for(i=0;i<n;i++){
                f(%s);
        }
 }
@@ -290,7 +290,7 @@ void %s(%s f, void *n) {
 }
 
 func (f cbDLLFunc) build() string {
-       return f.buildOne(false) + f.buildOne(true)
+       return "#include <stdint.h>\n\n" + f.buildOne(false) + f.buildOne(true)
 }
 
 var cbFuncs = [...]interface{}{
@@ -379,13 +379,13 @@ var cbDLLs = []cbDLL{
        {
                "test",
                func(out, src string) []string {
-                       return []string{"gcc", "-shared", "-s", "-o", out, src}
+                       return []string{"gcc", "-shared", "-s", "-Werror", "-o", out, src}
                },
        },
        {
                "testO2",
                func(out, src string) []string {
-                       return []string{"gcc", "-shared", "-s", "-o", out, "-O2", src}
+                       return []string{"gcc", "-shared", "-s", "-Werror", "-o", out, "-O2", src}
                },
        },
 }