Skip to content

Commit 3070fb6

Browse files
authored
Merge pull request #697 from jgressma/fixes-for-bcc
Fixes for Embacadero's XE5 compiler
2 parents 7100520 + aa50e29 commit 3070fb6

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

src/pugixml.cpp

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5582,12 +5582,12 @@ namespace pugi
55825582
#endif
55835583

55845584
#ifdef __BORLANDC__
5585-
PUGI_IMPL_FN bool operator&&(const xml_attribute& lhs, bool rhs)
5585+
PUGI_IMPL_FN bool PUGIXML_FUNCTION operator&&(const xml_attribute& lhs, bool rhs)
55865586
{
55875587
return (bool)lhs && rhs;
55885588
}
55895589

5590-
PUGI_IMPL_FN bool operator||(const xml_attribute& lhs, bool rhs)
5590+
PUGI_IMPL_FN bool PUGIXML_FUNCTION operator||(const xml_attribute& lhs, bool rhs)
55915591
{
55925592
return (bool)lhs || rhs;
55935593
}
@@ -6902,12 +6902,12 @@ namespace pugi
69026902
}
69036903

69046904
#ifdef __BORLANDC__
6905-
PUGI_IMPL_FN bool operator&&(const xml_node& lhs, bool rhs)
6905+
PUGI_IMPL_FN bool PUGIXML_FUNCTION operator&&(const xml_node& lhs, bool rhs)
69066906
{
69076907
return (bool)lhs && rhs;
69086908
}
69096909

6910-
PUGI_IMPL_FN bool operator||(const xml_node& lhs, bool rhs)
6910+
PUGI_IMPL_FN bool PUGIXML_FUNCTION operator||(const xml_node& lhs, bool rhs)
69116911
{
69126912
return (bool)lhs || rhs;
69136913
}
@@ -7215,12 +7215,12 @@ namespace pugi
72157215
}
72167216

72177217
#ifdef __BORLANDC__
7218-
PUGI_IMPL_FN bool operator&&(const xml_text& lhs, bool rhs)
7218+
PUGI_IMPL_FN bool PUGIXML_FUNCTION operator&&(const xml_text& lhs, bool rhs)
72197219
{
72207220
return (bool)lhs && rhs;
72217221
}
72227222

7223-
PUGI_IMPL_FN bool operator||(const xml_text& lhs, bool rhs)
7223+
PUGI_IMPL_FN bool PUGIXML_FUNCTION operator||(const xml_text& lhs, bool rhs)
72247224
{
72257225
return (bool)lhs || rhs;
72267226
}
@@ -7257,7 +7257,11 @@ namespace pugi
72577257
PUGI_IMPL_FN xml_node* xml_node_iterator::operator->() const
72587258
{
72597259
assert(_wrap._root);
7260+
#if defined(__BORLANDC__) && __BORLANDC__ <= 0x0670 // XE5
7261+
return const_cast<xml_node*>(&_wrap);
7262+
#else
72607263
return &_wrap;
7264+
#endif
72617265
}
72627266

72637267
PUGI_IMPL_FN xml_node_iterator& xml_node_iterator::operator++()
@@ -7318,7 +7322,11 @@ namespace pugi
73187322
PUGI_IMPL_FN xml_attribute* xml_attribute_iterator::operator->() const
73197323
{
73207324
assert(_wrap._attr);
7325+
#if defined(__BORLANDC__) && __BORLANDC__ <= 0x0670 // XE5
7326+
return const_cast<xml_attribute*>(&_wrap);
7327+
#else
73217328
return &_wrap;
7329+
#endif
73227330
}
73237331

73247332
PUGI_IMPL_FN xml_attribute_iterator& xml_attribute_iterator::operator++()
@@ -7379,7 +7387,11 @@ namespace pugi
73797387
PUGI_IMPL_FN xml_node* xml_named_node_iterator::operator->() const
73807388
{
73817389
assert(_wrap._root);
7390+
#if defined(__BORLANDC__) && __BORLANDC__ <= 0x0670 // XE5
7391+
return const_cast<xml_node*>(&_wrap);
7392+
#else
73827393
return &_wrap;
7394+
#endif
73837395
}
73847396

73857397
PUGI_IMPL_FN xml_named_node_iterator& xml_named_node_iterator::operator++()

0 commit comments

Comments
 (0)