diff --git a/samples/fx_lpng/lpng_v163/fx_pngmem.c b/samples/fx_lpng/lpng_v163/fx_pngmem.c
index 9be5803..cbbd4db 100644
--- a/samples/fx_lpng/lpng_v163/fx_pngmem.c
+++ b/samples/fx_lpng/lpng_v163/fx_pngmem.c
@@ -18,17 +18,9 @@
 
 #include "pngpriv.h"
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-extern "C" {
-#endif
-
 void*	FXMEM_DefaultAlloc(int byte_size, int);
 void	FXMEM_DefaultFree(void* pointer, int);
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-}
-#endif
-
 #if defined(PNG_READ_SUPPORTED) || defined(PNG_WRITE_SUPPORTED)
 /* Free a png_struct */
 void /* PRIVATE */
diff --git a/third_party/libjpeg/fpdfapi_jchuff.c b/third_party/libjpeg/fpdfapi_jchuff.c
index 02d91e2..005220c 100644
--- a/third_party/libjpeg/fpdfapi_jchuff.c
+++ b/third_party/libjpeg/fpdfapi_jchuff.c
@@ -19,10 +19,6 @@
 #include "jpeglib.h"
 #include "jchuff.h"		/* Declarations shared with jcphuff.c */
 
-#ifdef _FX_MANAGED_CODE_
-#define savable_state	savable_state_c
-#endif
-
 /* Expanded entropy encoder object for Huffman encoding.
  *
  * The savable_state subrecord contains fields that change within an MCU,
diff --git a/third_party/libjpeg/fpdfapi_jdhuff.c b/third_party/libjpeg/fpdfapi_jdhuff.c
index 4b0454d..2c9495c 100644
--- a/third_party/libjpeg/fpdfapi_jdhuff.c
+++ b/third_party/libjpeg/fpdfapi_jdhuff.c
@@ -19,10 +19,6 @@
 #include "jpeglib.h"
 #include "jdhuff.h"		/* Declarations shared with jdphuff.c */
 
-#ifdef _FX_MANAGED_CODE_
-#define savable_state	savable_state_d
-#endif
-
 /*
  * Expanded entropy decoder object for Huffman decoding.
  *
diff --git a/third_party/libjpeg/fpdfapi_jdmerge.c b/third_party/libjpeg/fpdfapi_jdmerge.c
index 519bbad..a175a56 100644
--- a/third_party/libjpeg/fpdfapi_jdmerge.c
+++ b/third_party/libjpeg/fpdfapi_jdmerge.c
@@ -38,10 +38,6 @@
 
 #ifdef UPSAMPLE_MERGING_SUPPORTED
 
-#ifdef _FX_MANAGED_CODE_
-#define my_upsampler	my_upsampler_m
-#endif
-
 /* Private subobject */
 
 typedef struct {
diff --git a/third_party/libjpeg/fpdfapi_jmemnobs.c b/third_party/libjpeg/fpdfapi_jmemnobs.c
index 201c5d6..0344f6f 100644
--- a/third_party/libjpeg/fpdfapi_jmemnobs.c
+++ b/third_party/libjpeg/fpdfapi_jmemnobs.c
@@ -25,17 +25,9 @@
 extern void free JPP((void *ptr));
 #endif
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-extern "C" {
-#endif
-
 void*	FXMEM_DefaultAlloc(int byte_size, int);
 void	FXMEM_DefaultFree(void* pointer, int);
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-}
-#endif
-
 /*
  * Memory allocation and freeing are controlled by the regular library
  * routines malloc() and free().
diff --git a/third_party/libjpeg/jmorecfg.h b/third_party/libjpeg/jmorecfg.h
index 88d2109..a80d904 100644
--- a/third_party/libjpeg/jmorecfg.h
+++ b/third_party/libjpeg/jmorecfg.h
@@ -195,12 +195,8 @@
 /* a function referenced thru EXTERNs: */
 #define GLOBAL(type)		type
 
-#ifdef _FX_MANAGED_CODE_
-#define EXTERN(type)		extern "C" type
-#else
 /* a reference to a GLOBAL function: */
 #define EXTERN(type)		extern type
-#endif
 
 
 /* This macro is used to declare a "method", that is, a function pointer.
diff --git a/third_party/zlib_v128/gzguts.h b/third_party/zlib_v128/gzguts.h
index a877c0e..e2c3b67 100644
--- a/third_party/zlib_v128/gzguts.h
+++ b/third_party/zlib_v128/gzguts.h
@@ -116,17 +116,9 @@
   extern void   free   OF((voidpf ptr));
 #endif
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-extern "C" {
-#endif
-
 extern void* FXMEM_DefaultAlloc(size_t, int);
 extern void FXMEM_DefaultFree(void*, int);
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-}
-#endif
-
 #define malloc(size) FXMEM_DefaultAlloc(size, 0)
 #define free(ptr) FXMEM_DefaultFree(ptr, 0)
 
diff --git a/third_party/zlib_v128/zutil.c b/third_party/zlib_v128/zutil.c
index 02b945f..5fa0079 100644
--- a/third_party/zlib_v128/zutil.c
+++ b/third_party/zlib_v128/zutil.c
@@ -326,17 +326,9 @@
 #endif /* !Z_SOLO */
 #endif	/* 0 */
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-extern "C" {
-#endif
-
 extern void* FXMEM_DefaultAlloc(size_t, int);
 extern void FXMEM_DefaultFree(void*, int);
 
-#if defined(_FX_MANAGED_CODE_) && defined(__cplusplus)
-}
-#endif
-
 /* XYQ 2007-1-19 */
 voidpf zcalloc(voidpf opaque, unsigned items, unsigned size)
 {
