diff --git a/Include/structmember.h b/Include/structmember.h
index 10555b1..acdb84e 100644
--- a/Include/structmember.h
+++ b/Include/structmember.h
@@ -69,8 +69,8 @@
 /* Flags */
 #define READONLY	1
 #define READ_RESTRICTED	2
-#define WRITE_RESTRICTED 4
-#define RESTRICTED	(READ_RESTRICTED | WRITE_RESTRICTED)
+#define PY_WRITE_RESTRICTED 4
+#define RESTRICTED	(READ_RESTRICTED | PY_WRITE_RESTRICTED)
 
 
 /* Current API, use this */
diff --git a/Misc/NEWS b/Misc/NEWS
index f68ac90..e0d3f8b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -39,6 +39,12 @@
   streams (fileno(stdin) < 0). For now this happens only for Windows GUI
   apps and scripts started with `pythonw.exe`.
 
+- Added PCbuild9 directory for VS 2008.
+
+- Renamed structmember.h WRITE_RESTRICTED to PY_WRITE_RESTRICTED to work
+  around a name clash with VS 2008 on Windows.
+
+
 Extension Modules
 -----------------
 
diff --git a/Objects/funcobject.c b/Objects/funcobject.c
index 808f4ea..408be4c 100644
--- a/Objects/funcobject.c
+++ b/Objects/funcobject.c
@@ -227,10 +227,10 @@
 static PyMemberDef func_memberlist[] = {
         {"__closure__",   T_OBJECT,     OFF(func_closure),
 	 RESTRICTED|READONLY},
-        {"__doc__",       T_OBJECT,     OFF(func_doc), WRITE_RESTRICTED},
+        {"__doc__",       T_OBJECT,     OFF(func_doc), PY_WRITE_RESTRICTED},
         {"__globals__",   T_OBJECT,     OFF(func_globals),
 	 RESTRICTED|READONLY},
-        {"__module__",    T_OBJECT,     OFF(func_module), WRITE_RESTRICTED},
+        {"__module__",    T_OBJECT,     OFF(func_module), PY_WRITE_RESTRICTED},
         {NULL}  /* Sentinel */
 };
 
diff --git a/Objects/methodobject.c b/Objects/methodobject.c
index 8a8ca03..73e0790 100644
--- a/Objects/methodobject.c
+++ b/Objects/methodobject.c
@@ -167,7 +167,7 @@
 #define OFF(x) offsetof(PyCFunctionObject, x)
 
 static PyMemberDef meth_members[] = {
-	{"__module__",    T_OBJECT,     OFF(m_module), WRITE_RESTRICTED},
+	{"__module__",    T_OBJECT,     OFF(m_module), PY_WRITE_RESTRICTED},
 	{NULL}
 };
 
diff --git a/PCbuild9/pythoncore.vcproj b/PCbuild9/pythoncore.vcproj
index 7601d48..8431f31 100644
--- a/PCbuild9/pythoncore.vcproj
+++ b/PCbuild9/pythoncore.vcproj
@@ -61,6 +61,7 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
+				AdditionalDependencies="getbuildinfo.o"
 				OutputFile="./python30.dll"
 				IgnoreDefaultLibraryNames="libc"
 				ProgramDatabaseFile="python30.pdb"
@@ -137,6 +138,7 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
+				AdditionalDependencies="getbuildinfo.o"
 				OutputFile="./python30.dll"
 				IgnoreDefaultLibraryNames="libc"
 				ProgramDatabaseFile="python30.pdb"
@@ -213,6 +215,7 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
+				AdditionalDependencies="getbuildinfo.o"
 				OutputFile="$(PyDllName)_d.dll"
 				IgnoreDefaultLibraryNames="libc"
 				ProgramDatabaseFile="python30_d.pdb"
@@ -1181,10 +1184,6 @@
 				>
 			</File>
 			<File
-				RelativePath="..\PCBuild9_old\getbuildinfo.c"
-				>
-			</File>
-			<File
 				RelativePath="..\PC\getpathp.c"
 				>
 			</File>
diff --git a/PCbuild9/readme.txt b/PCbuild9/readme.txt
index 62c2192..1fd8cc3 100644
--- a/PCbuild9/readme.txt
+++ b/PCbuild9/readme.txt
@@ -227,7 +227,7 @@
 
     Get the source code through
 
-    svn export http://svn.python.org/projects/external/openssl-0.9.8a
+    svn export http://svn.python.org/projects/external/openssl-0.9.8g
 
     Alternatively, get the latest version from http://www.openssl.org.
     You can (theoretically) use any version of OpenSSL you like - the
