Comments (7)
Aaaargh :( This is probably a regression from b7a1fec. I think I tested that CL on MinGW 4.4, 4.5, 4.6 and 4.8 and set the threshold for the comparison to 4.5 based on the test results but maybe 4.7 is different... or my compilation flags during testing were incorrect.
I'll retest and implement a workaround.
from pugixml.
I can confirm - when rolled back changes of that commit the problem seems to disappear
from pugixml.
When using MinGW 4.7.1 from this source: http://hivelocity.dl.sourceforge.net/project/mingwbuilds/host-windows/releases/4.7.1/32-bit/threads-win32/dwarf/x32-4.7.1-release-win32-dwarf-rev0.7z
With this command-line:
"C:\pugixml\tools\MinGW471\bin\g++.exe" -march=pentium4 -std=c++11 -w -fno-strict-aliasing -D__STDC_CONSTANT_MACROS -fexpensive-optimizations -O2 -DNDEBUG -D_WINDOWS -DUNICODE -D_UNICODE -c pugixml.cpp
The compilation succeeds. The tests also pass.
Where did you get your build of MinGW 4.7.1?
from pugixml.
It's part of Code Blocks (exact filename is codeblocks-13.12mingw-setup.exe
) downloaded from this website
from pugixml.
Thanks; I can now reproduce the problem. The behavior seems to be different for TDM-GCC builds - I believe I was testing on MinGW-w64 builds before. My guess is that TDM-GCC bundles different versions of standard headers since the headers are apparently in a package that's versioned separately from GCC itself. The only TDM-GCC version that works is 4.9.2... 4.8.1 and below, including 4.7.1, don't work (up until 4.5.2 where the version check in pugixml kicks in).
I'll try to find a more robust detection method.
from pugixml.
Ah, ok. The TDM-GCC version does not actually matter :) All 32-bit TDM-GCC distributions don't work; all 64-bit TDM-GCC distributions (starting with 4.5 at least) do work without any version checks. That explains why I tricked myself into setting a 4.5 limit - my test suite happens to have 32-bit 4.5 and 64-bit 4.6. There's still the question of why the hell these functions are absent in C++11 mode in TDM-GCC 32bit...
from pugixml.
Note: the fix was reuploaded as v1.5.
Since the issue is contained to just MinGW 32 in C++11 mode and I also discovered a small packaging error (the documentation files were slightly different from the Git version) reuploading a fixed 1.5 was preferable to creating a new patch version.
from pugixml.
Related Issues (20)
- Version 1.14 HOT 1
- Can you add the ability to access child nodes using index? HOT 1
- PUGIXML_WCHAR_MODE and error messages. HOT 1
- add xml_node_type_str function for debugging and application logging HOT 3
- option to join multiple CDATA sections into one when parsing HOT 2
- parse_embed_pcdata and parse_merge_pcdata don't play together HOT 2
- Unexpected #endif in line 13201 with precompilation in a pch.h file HOT 2
- XML Canonicalization: as an option, allow parsing eol's into the document model (as PCDATA holding those) HOT 2
- Warning when building 1.14 in x86 on Clang HOT 3
- Position of the parse result offset in case of status_bad_start_element
- Error in handling loading errors example HOT 1
- Incorrect result of xml_document::load_file -"File was not found" HOT 2
- Question: I have made my own case insensitive version, is that ok? HOT 2
- Serilisation HOT 4
- pugi::xml_node and std::ranges, maybe a documentation request HOT 2
- call function xml_node::empty() always return false in anyway HOT 3
- Not able to attach a xsl via a `<?xml-stylesheet ...?>` node HOT 1
- xmldocument::save uses non-transformed encoding parameter HOT 4
- Warnings (C5245) when having PUGIXML_NO_STL and PUGIXML_API defined HOT 6
- PUGIXML_WCHAR_MODE featrue for vcpkg HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pugixml.