Git Product home page Git Product logo

Comments (7)

zeux avatar zeux commented on August 28, 2024

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.

Shelim avatar Shelim commented on August 28, 2024

I can confirm - when rolled back changes of that commit the problem seems to disappear

from pugixml.

zeux avatar zeux commented on August 28, 2024

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.

Shelim avatar Shelim commented on August 28, 2024

It's part of Code Blocks (exact filename is codeblocks-13.12mingw-setup.exe) downloaded from this website

from pugixml.

zeux avatar zeux commented on August 28, 2024

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.

zeux avatar zeux commented on August 28, 2024

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.

zeux avatar zeux commented on August 28, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.