yaml_string_extend(yaml_char_t **start,
yaml_char_t **pointer, yaml_char_t **end)
{
- void *new_start = yaml_realloc(*start, (*end - *start)*2);
+ yaml_char_t *new_start = yaml_realloc(*start, (*end - *start)*2);
if (!new_start) return 0;
YAML_DECLARE(int)
yaml_stack_extend(void **start, void **top, void **end)
{
- void *new_start = yaml_realloc(*start, (*end - *start)*2);
+ void *new_start = yaml_realloc(*start, ((char *)*end - (char *)*start)*2);
if (!new_start) return 0;
- *top = new_start + (*top - *start);
- *end = new_start + (*end - *start)*2;
+ *top = (char *)new_start + ((char *)*top - (char *)*start);
+ *end = (char *)new_start + ((char *)*end - (char *)*start)*2;
*start = new_start;
return 1;
/* Check if we need to resize the queue. */
if (*start == *head && *tail == *end) {
- void *new_start = yaml_realloc(*start, (*end - *start)*2);
+ void *new_start = yaml_realloc(*start,
+ ((char *)*end - (char *)*start)*2);
if (!new_start) return 0;
- *head = new_start + (*head - *start);
- *tail = new_start + (*tail - *start);
- *end = new_start + (*end - *start)*2;
+ *head = (char *)new_start + ((char *)*head - (char *)*start);
+ *tail = (char *)new_start + ((char *)*tail - (char *)*start);
+ *end = (char *)new_start + ((char *)*end - (char *)*start)*2;
*start = new_start;
}
if (*tail == *end) {
if (*head != *tail) {
- memmove(*start, *head, *tail - *head);
+ memmove(*start, *head, (char *)*tail - (char *)*head);
}
- *tail -= *head - *start;
+ *tail = (char *)*tail - (char *)*head + (char *)*start;
*head = *start;
}
return 1;
}
- if (size > (parser->input.string.end - parser->input.string.current)) {
+ if (size > (size_t)(parser->input.string.end
+ - parser->input.string.current)) {
size = parser->input.string.end - parser->input.string.current;
}
unsigned char octet;
unsigned int width;
unsigned int value;
- int k;
+ size_t k;
octet = pointer[0];
width = (octet & 0x80) == 0x00 ? 1 :
{
struct {
yaml_error_type_t error;
- } context;
+ } context = { YAML_NO_ERROR };
yaml_tag_directive_t *tag_directive;
assert(document); /* Non-NULL document object is expected. */
return 1;
}
+
for (tag_directive = emitter->tag_directives.start;
tag_directive != emitter->tag_directives.top; tag_directive ++) {
size_t prefix_length = strlen((char *)tag_directive->prefix);
- if (prefix_length < (string.end - string.start)
+ if (prefix_length < (size_t)(string.end - string.start)
&& strncmp((char *)tag_directive->prefix, (char *)string.start,
prefix_length) == 0)
{
unsigned char octet;
unsigned int width;
unsigned int value;
- int k;
+ size_t k;
octet = string.pointer[0];
width = (octet & 0x80) == 0x00 ? 1 :
yaml_parser_register_anchor(yaml_parser_t *parser,
int index, yaml_char_t *anchor)
{
- yaml_alias_data_t data = { anchor, index,
- parser->document->nodes.start[index-1].start_mark };
+ yaml_alias_data_t data = { anchor, index, { 0, 0, 0 } };
yaml_alias_data_t *alias_data;
if (!anchor) return 1;
+ data.mark = parser->document->nodes.start[index-1].start_mark;
+
for (alias_data = parser->aliases.start;
alias_data != parser->aliases.top; alias_data ++) {
if (strcmp((char *)alias_data->anchor, (char *)anchor) == 0) {
int incomplete = 0;
unsigned char octet;
unsigned int width = 0;
- int k, low, high;
- int raw_unread = parser->raw_buffer.last - parser->raw_buffer.pointer;
+ int low, high;
+ size_t k;
+ size_t raw_unread = parser->raw_buffer.last - parser->raw_buffer.pointer;
/* Decode the next character. */
*/
int required = (!parser->flow_level
- && parser->indent == parser->mark.column);
+ && parser->indent == (int)parser->mark.column);
/*
* A simple key is required only when it is the first token in the current
{
yaml_simple_key_t simple_key = { 1, required,
parser->tokens_parsed + parser->tokens.tail - parser->tokens.head,
- parser->mark };
+ { 0, 0, 0 } };
+ simple_key.mark = parser->mark;
if (!yaml_parser_remove_simple_key(parser)) return 0;
/* Resize the string to include the head. */
- while (string.end - string.start <= length) {
+ while (string.end - string.start <= (int)length) {
if (!yaml_string_extend(&string.start, &string.pointer, &string.end)) {
parser->error = YAML_MEMORY_ERROR;
goto error;
if (!CACHE(parser, 1)) goto error;
- while (parser->mark.column == indent && !IS_Z(parser->buffer))
+ while ((int)parser->mark.column == indent && !IS_Z(parser->buffer))
{
/*
* We are at the beginning of a non-empty line.
if (!CACHE(parser, 1)) return 0;
- while ((!*indent || parser->mark.column < *indent)
+ while ((!*indent || (int)parser->mark.column < *indent)
&& IS_SPACE(parser->buffer)) {
SKIP(parser);
if (!CACHE(parser, 1)) return 0;
}
- if (parser->mark.column > max_indent)
- max_indent = parser->mark.column;
+ if ((int)parser->mark.column > max_indent)
+ max_indent = (int)parser->mark.column;
/* Check for a tab character messing the intendation. */
- if ((!*indent || parser->mark.column < *indent)
+ if ((!*indent || (int)parser->mark.column < *indent)
&& IS_TAB(parser->buffer)) {
return yaml_parser_set_scanner_error(parser, "while scanning a block scalar",
start_mark, "found a tab character where an intendation space is expected");
else if (!single && CHECK(parser->buffer, '\\'))
{
- int code_length = 0;
+ size_t code_length = 0;
if (!STRING_EXTEND(parser, string)) goto error;
if (code_length)
{
unsigned int value = 0;
- int k;
+ size_t k;
/* Scan the character value. */
{
/* Check for tab character that abuse intendation. */
- if (leading_blanks && parser->mark.column < indent
+ if (leading_blanks && (int)parser->mark.column < indent
&& IS_TAB(parser->buffer)) {
yaml_parser_set_scanner_error(parser, "while scanning a plain scalar",
start_mark, "found a tab character that violate intendation");
/* Check intendation level. */
- if (!parser->flow_level && parser->mark.column < indent)
+ if (!parser->flow_level && (int)parser->mark.column < indent)
break;
}
unsigned char octet;
unsigned int width;
unsigned int value;
- int k;
+ size_t k;
/*
* See the "reader.c" code for more details on UTF-8 encoding. Note
--- /dev/null
+#define YAML_VERSION_MAJOR 0
+#define YAML_VERSION_MINOR 0
+#define YAML_VERSION_PATCH 1
+#define YAML_VERSION_STRING "0.0.1"
\ No newline at end of file
--- /dev/null
+Microsoft Developer Studio Workspace File, Format Version 6.00\r
+# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!\r
+\r
+###############################################################################\r
+\r
+Project: "yaml"=".\yaml\yaml.dsp" - Package Owner=<4>\r
+\r
+Package=<5>\r
+{{{\r
+}}}\r
+\r
+Package=<4>\r
+{{{\r
+}}}\r
+\r
+###############################################################################\r
+\r
+Project: "yamldll"=".\yamldll\yamldll.dsp" - Package Owner=<4>\r
+\r
+Package=<5>\r
+{{{\r
+}}}\r
+\r
+Package=<4>\r
+{{{\r
+}}}\r
+\r
+###############################################################################\r
+\r
+Global:\r
+\r
+Package=<5>\r
+{{{\r
+}}}\r
+\r
+Package=<3>\r
+{{{\r
+}}}\r
+\r
+###############################################################################\r
+\r
--- /dev/null
+# Microsoft Developer Studio Project File - Name="yaml" - Package Owner=<4>\r
+# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
+# ** DO NOT EDIT **\r
+\r
+# TARGTYPE "Win32 (x86) Static Library" 0x0104\r
+\r
+CFG=yaml - Win32 Debug\r
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
+!MESSAGE use the Export Makefile command and run\r
+!MESSAGE \r
+!MESSAGE NMAKE /f "yaml.mak".\r
+!MESSAGE \r
+!MESSAGE You can specify a configuration when running NMAKE\r
+!MESSAGE by defining the macro CFG on the command line. For example:\r
+!MESSAGE \r
+!MESSAGE NMAKE /f "yaml.mak" CFG="yaml - Win32 Debug"\r
+!MESSAGE \r
+!MESSAGE Possible choices for configuration are:\r
+!MESSAGE \r
+!MESSAGE "yaml - Win32 Release" (based on "Win32 (x86) Static Library")\r
+!MESSAGE "yaml - Win32 Debug" (based on "Win32 (x86) Static Library")\r
+!MESSAGE \r
+\r
+# Begin Project\r
+# PROP AllowPerConfigDependencies 0\r
+# PROP Scc_ProjName ""\r
+# PROP Scc_LocalPath ""\r
+CPP=cl.exe\r
+RSC=rc.exe\r
+\r
+!IF "$(CFG)" == "yaml - Win32 Release"\r
+\r
+# PROP BASE Use_MFC 0\r
+# PROP BASE Use_Debug_Libraries 0\r
+# PROP BASE Output_Dir "Release"\r
+# PROP BASE Intermediate_Dir "Release"\r
+# PROP BASE Target_Dir ""\r
+# PROP Use_MFC 0\r
+# PROP Use_Debug_Libraries 0\r
+# PROP Output_Dir "Release"\r
+# PROP Intermediate_Dir "Release"\r
+# PROP Target_Dir ""\r
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c\r
+# ADD CPP /nologo /W3 /GX /O2 /I "..\.." /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "HAVE_CONFIG_H" /D "YAML_DECLARE_STATIC" /YX /FD /c\r
+# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
+# ADD RSC /l 0x409 /d "NDEBUG"\r
+BSC32=bscmake.exe\r
+# ADD BASE BSC32 /nologo\r
+# ADD BSC32 /nologo\r
+LIB32=link.exe -lib\r
+# ADD BASE LIB32 /nologo\r
+# ADD LIB32 /nologo\r
+\r
+!ELSEIF "$(CFG)" == "yaml - Win32 Debug"\r
+\r
+# PROP BASE Use_MFC 0\r
+# PROP BASE Use_Debug_Libraries 1\r
+# PROP BASE Output_Dir "Debug"\r
+# PROP BASE Intermediate_Dir "Debug"\r
+# PROP BASE Target_Dir ""\r
+# PROP Use_MFC 0\r
+# PROP Use_Debug_Libraries 1\r
+# PROP Output_Dir "Debug"\r
+# PROP Intermediate_Dir "Debug"\r
+# PROP Target_Dir ""\r
+# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c\r
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\.." /I "..\..\..\include" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "HAVE_CONFIG_H" /D "YAML_DECLARE_STATIC" /YX /FD /GZ /c\r
+# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
+# ADD RSC /l 0x409 /d "_DEBUG"\r
+BSC32=bscmake.exe\r
+# ADD BASE BSC32 /nologo\r
+# ADD BSC32 /nologo\r
+LIB32=link.exe -lib\r
+# ADD BASE LIB32 /nologo\r
+# ADD LIB32 /nologo\r
+\r
+!ENDIF \r
+\r
+# Begin Target\r
+\r
+# Name "yaml - Win32 Release"\r
+# Name "yaml - Win32 Debug"\r
+# Begin Group "Source Files"\r
+\r
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\api.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\dumper.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\emitter.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\loader.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\parser.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\reader.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\scanner.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\writer.c\r
+# End Source File\r
+# End Group\r
+# Begin Group "Header Files"\r
+\r
+# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
+# Begin Source File\r
+\r
+SOURCE=..\..\config.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\include\yaml.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\yaml_private.h\r
+# End Source File\r
+# End Group\r
+# End Target\r
+# End Project\r
--- /dev/null
+# Microsoft Developer Studio Project File - Name="yamldll" - Package Owner=<4>\r
+# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
+# ** DO NOT EDIT **\r
+\r
+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102\r
+\r
+CFG=yamldll - Win32 Debug\r
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
+!MESSAGE use the Export Makefile command and run\r
+!MESSAGE \r
+!MESSAGE NMAKE /f "yamldll.mak".\r
+!MESSAGE \r
+!MESSAGE You can specify a configuration when running NMAKE\r
+!MESSAGE by defining the macro CFG on the command line. For example:\r
+!MESSAGE \r
+!MESSAGE NMAKE /f "yamldll.mak" CFG="yamldll - Win32 Debug"\r
+!MESSAGE \r
+!MESSAGE Possible choices for configuration are:\r
+!MESSAGE \r
+!MESSAGE "yamldll - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")\r
+!MESSAGE "yamldll - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")\r
+!MESSAGE \r
+\r
+# Begin Project\r
+# PROP AllowPerConfigDependencies 0\r
+# PROP Scc_ProjName ""\r
+# PROP Scc_LocalPath ""\r
+CPP=cl.exe\r
+MTL=midl.exe\r
+RSC=rc.exe\r
+\r
+!IF "$(CFG)" == "yamldll - Win32 Release"\r
+\r
+# PROP BASE Use_MFC 0\r
+# PROP BASE Use_Debug_Libraries 0\r
+# PROP BASE Output_Dir "Release"\r
+# PROP BASE Intermediate_Dir "Release"\r
+# PROP BASE Target_Dir ""\r
+# PROP Use_MFC 0\r
+# PROP Use_Debug_Libraries 0\r
+# PROP Output_Dir "Release"\r
+# PROP Intermediate_Dir "Release"\r
+# PROP Ignore_Export_Lib 0\r
+# PROP Target_Dir ""\r
+# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "YAMLDLL_EXPORTS" /YX /FD /c\r
+# ADD CPP /nologo /MT /W3 /GX /O2 /I "..\.." /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "HAVE_CONFIG_H" /D "YAML_DECLARE_EXPORT" /YX /FD /c\r
+# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32\r
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32\r
+# ADD BASE RSC /l 0x409 /d "NDEBUG"\r
+# ADD RSC /l 0x409 /d "NDEBUG"\r
+BSC32=bscmake.exe\r
+# ADD BASE BSC32 /nologo\r
+# ADD BSC32 /nologo\r
+LINK32=link.exe\r
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386\r
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386\r
+\r
+!ELSEIF "$(CFG)" == "yamldll - Win32 Debug"\r
+\r
+# PROP BASE Use_MFC 0\r
+# PROP BASE Use_Debug_Libraries 1\r
+# PROP BASE Output_Dir "Debug"\r
+# PROP BASE Intermediate_Dir "Debug"\r
+# PROP BASE Target_Dir ""\r
+# PROP Use_MFC 0\r
+# PROP Use_Debug_Libraries 1\r
+# PROP Output_Dir "Debug"\r
+# PROP Intermediate_Dir "Debug"\r
+# PROP Ignore_Export_Lib 0\r
+# PROP Target_Dir ""\r
+# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "YAMLDLL_EXPORTS" /YX /FD /GZ /c\r
+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\.." /I "..\..\..\include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "HAVE_CONFIG_H" /D "YAML_DECLARE_EXPORT" /YX /FD /GZ /c\r
+# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32\r
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32\r
+# ADD BASE RSC /l 0x409 /d "_DEBUG"\r
+# ADD RSC /l 0x409 /d "_DEBUG"\r
+BSC32=bscmake.exe\r
+# ADD BASE BSC32 /nologo\r
+# ADD BSC32 /nologo\r
+LINK32=link.exe\r
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept\r
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept\r
+\r
+!ENDIF \r
+\r
+# Begin Target\r
+\r
+# Name "yamldll - Win32 Release"\r
+# Name "yamldll - Win32 Debug"\r
+# Begin Group "Source Files"\r
+\r
+# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\api.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\dumper.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\emitter.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\loader.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\parser.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\reader.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\scanner.c\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\writer.c\r
+# End Source File\r
+# End Group\r
+# Begin Group "Header Files"\r
+\r
+# PROP Default_Filter "h;hpp;hxx;hm;inl"\r
+# Begin Source File\r
+\r
+SOURCE=..\..\config.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\include\yaml.h\r
+# End Source File\r
+# Begin Source File\r
+\r
+SOURCE=..\..\..\src\yaml_private.h\r
+# End Source File\r
+# End Group\r
+# Begin Group "Resource Files"\r
+\r
+# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"\r
+# End Group\r
+# End Target\r
+# End Project\r