diff --git a/OpenVMS/libcjsonasis.opt b/OpenVMS/libcjsonasis.opt
index ec2762c096683dae5a5c8407a09961bf7aef432a_T3BlblZNUy9saWJjanNvbmFzaXMub3B0..1cd65f599813c9cda9a24d37d79154e3f645448c_T3BlblZNUy9saWJjanNvbmFzaXMub3B0 100644
--- a/OpenVMS/libcjsonasis.opt
+++ b/OpenVMS/libcjsonasis.opt
@@ -1,6 +1,6 @@
 ! LINK
 !
-GSMATCH=LEQUAL,3,0
+GSMATCH=LEQUAL,4,0
 IDENTIFICATION="libcjson"
 CASE_SENSITIVE=yes
 ! ../cJSON.c
@@ -8,6 +8,8 @@
 SYMBOL_VECTOR=(CJSON_GETERRORPTR/cJSON_GetErrorPtr=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_GetStringValue=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_GETSTRINGVALUE/cJSON_GetStringValue=PROCEDURE)
+SYMBOL_VECTOR=(cJSON_GetNumberValue=PROCEDURE)
+SYMBOL_VECTOR=(CJSON_GETNUMBERVALUE/cJSON_GetNumberValue=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_Version=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_VERSION/cJSON_Version=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_InitHooks=PROCEDURE)
@@ -16,5 +18,7 @@
 SYMBOL_VECTOR=(CJSON_DELETE/cJSON_Delete=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_SetNumberHelper=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_SETNUMBERHELPER/cJSON_SetNumberHelper=PROCEDURE)
+SYMBOL_VECTOR=(cJSON_SetValuestring=PROCEDURE)
+SYMBOL_VECTOR=(CJSON_SETVALUESTRING/cJSON_SetValuestring=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_ParseWithOpts=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_PARSEWITHOPTS/cJSON_ParseWithOpts=PROCEDURE)
@@ -19,4 +23,6 @@
 SYMBOL_VECTOR=(cJSON_ParseWithOpts=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_PARSEWITHOPTS/cJSON_ParseWithOpts=PROCEDURE)
+SYMBOL_VECTOR=(cJSON_ParseWithLengthOpts=PROCEDURE)
+SYMBOL_VECTOR=(CJSON_PARSEWITHLENGTHOPTS/cJSON_ParseWithLengthOpts=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_Parse=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_PARSE/cJSON_Parse=PROCEDURE)
@@ -21,5 +27,7 @@
 SYMBOL_VECTOR=(cJSON_Parse=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_PARSE/cJSON_Parse=PROCEDURE)
+SYMBOL_VECTOR=(cJSON_ParseWithLength=PROCEDURE)
+SYMBOL_VECTOR=(CJSON_PARSEWITHLENGTH/cJSON_ParseWithLength=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_Print=PROCEDURE)
 SYMBOL_VECTOR=(CJSON_PRINT/cJSON_Print=PROCEDURE)
 SYMBOL_VECTOR=(cJSON_PrintUnformatted=PROCEDURE)
diff --git a/cJSON.c b/cJSON.c
index ec2762c096683dae5a5c8407a09961bf7aef432a_Y0pTT04uYw==..1cd65f599813c9cda9a24d37d79154e3f645448c_Y0pTT04uYw== 100644
--- a/cJSON.c
+++ b/cJSON.c
@@ -78,5 +78,8 @@
 #endif
 
 #ifndef NAN
+#ifdef __VMS
+#define NAN sqrt(-1)
+#else
 #define NAN 0.0/0.0
 #endif
@@ -81,5 +84,6 @@
 #define NAN 0.0/0.0
 #endif
+#endif
 
 typedef struct {
     const unsigned char *json;