Problems with <decimal/decimal> header on OS X

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi everybody, I'm experiencing problems with the <decimal/decimal> C++ header
on OS X.

I've installed GCC 4.7.2 with MacPorts and it seems to work with normal
programs but if I write a program which includes <decimal/decimal> I get a
mile-long error message.

E.G. I write in "main.cpp":

    #include <iostream>
    #include <decimal/decimal>

    using namespace std;

    int main()
    {
        cout << "Hello, world!" << endl;

        return 0;
    }

and then in the shell:

    $ g++ main.cpp -o exe

I get this error message:

In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:39:2: error: #error This file
requires compiler and library support for ISO/IEC TR 24733 that is currently
not available.
/opt/local/include/gcc47/c++/decimal/decimal:230:56: error: unable to
emulate 'SD'
/opt/local/include/gcc47/c++/decimal/decimal:251:5: error:
'std::decimal::decimal32::decimal32(std::decimal::decimal32::__decfloat32)'
cannot be overloaded
/opt/local/include/gcc47/c++/decimal/decimal:238:14: error: with
'std::decimal::decimal32::decimal32(float)'
/opt/local/include/gcc47/c++/decimal/decimal:313:56: error: unable to
emulate 'DD'
/opt/local/include/gcc47/c++/decimal/decimal:334:5: error:
'std::decimal::decimal64::decimal64(std::decimal::decimal64::__decfloat64)'
cannot be overloaded
/opt/local/include/gcc47/c++/decimal/decimal:321:14: error: with
'std::decimal::decimal64::decimal64(float)'
/opt/local/include/gcc47/c++/decimal/decimal:396:57: error: unable to
emulate 'TD'
/opt/local/include/gcc47/c++/decimal/decimal:418:5: error:
'std::decimal::decimal128::decimal128(std::decimal::decimal128::__decfloat128)'
cannot be overloaded
/opt/local/include/gcc47/c++/decimal/decimal:404:14: error: with
'std::decimal::decimal128::decimal128(float)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h: In function
'std::decimal::decimal32 std::decimal::make_decimal32(long long int, int)':
/opt/local/include/gcc47/c++/decimal/decimal.h:127:17: error: conversion
from '<unnamed-float:32>' to 'const std::decimal::decimal32' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:127:17: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:248:5: note:
std::decimal::decimal32::decimal32(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:247:5: note:
std::decimal::decimal32::decimal32(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:246:5: note:
std::decimal::decimal32::decimal32(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:245:5: note:
std::decimal::decimal32::decimal32(long int)
/opt/local/include/gcc47/c++/decimal/decimal:244:5: note:
std::decimal::decimal32::decimal32(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:243:5: note:
std::decimal::decimal32::decimal32(int)
/opt/local/include/gcc47/c++/decimal/decimal:240:14: note:
std::decimal::decimal32::decimal32(long double)
/opt/local/include/gcc47/c++/decimal/decimal:239:14: note:
std::decimal::decimal32::decimal32(double)
/opt/local/include/gcc47/c++/decimal/decimal:238:14: note:
std::decimal::decimal32::decimal32(float)
/opt/local/include/gcc47/c++/decimal/decimal:227:9: error: initializing
argument 1 of 'std::decimal::decimal32&
std::decimal::decimal32::operator=(const std::decimal::decimal32&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h:131:22: error: conversion
from '<unnamed-float:32>' to 'const std::decimal::decimal32' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:131:22: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:248:5: note:
std::decimal::decimal32::decimal32(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:247:5: note:
std::decimal::decimal32::decimal32(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:246:5: note:
std::decimal::decimal32::decimal32(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:245:5: note:
std::decimal::decimal32::decimal32(long int)
/opt/local/include/gcc47/c++/decimal/decimal:244:5: note:
std::decimal::decimal32::decimal32(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:243:5: note:
std::decimal::decimal32::decimal32(int)
/opt/local/include/gcc47/c++/decimal/decimal:240:14: note:
std::decimal::decimal32::decimal32(long double)
/opt/local/include/gcc47/c++/decimal/decimal:239:14: note:
std::decimal::decimal32::decimal32(double)
/opt/local/include/gcc47/c++/decimal/decimal:238:14: note:
std::decimal::decimal32::decimal32(float)
/opt/local/include/gcc47/c++/decimal/decimal:227:9: error: initializing
argument 1 of 'std::decimal::decimal32&
std::decimal::decimal32::operator=(const std::decimal::decimal32&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h: In function
'std::decimal::decimal32 std::decimal::make_decimal32(long long unsigned
int, int)':
/opt/local/include/gcc47/c++/decimal/decimal.h:145:17: error: conversion
from '<unnamed-float:32>' to 'const std::decimal::decimal32' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:145:17: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:248:5: note:
std::decimal::decimal32::decimal32(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:247:5: note:
std::decimal::decimal32::decimal32(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:246:5: note:
std::decimal::decimal32::decimal32(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:245:5: note:
std::decimal::decimal32::decimal32(long int)
/opt/local/include/gcc47/c++/decimal/decimal:244:5: note:
std::decimal::decimal32::decimal32(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:243:5: note:
std::decimal::decimal32::decimal32(int)
/opt/local/include/gcc47/c++/decimal/decimal:240:14: note:
std::decimal::decimal32::decimal32(long double)
/opt/local/include/gcc47/c++/decimal/decimal:239:14: note:
std::decimal::decimal32::decimal32(double)
/opt/local/include/gcc47/c++/decimal/decimal:238:14: note:
std::decimal::decimal32::decimal32(float)
/opt/local/include/gcc47/c++/decimal/decimal:227:9: error: initializing
argument 1 of 'std::decimal::decimal32&
std::decimal::decimal32::operator=(const std::decimal::decimal32&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h:149:22: error: conversion
from '<unnamed-float:32>' to 'const std::decimal::decimal32' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:149:22: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:248:5: note:
std::decimal::decimal32::decimal32(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:247:5: note:
std::decimal::decimal32::decimal32(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:246:5: note:
std::decimal::decimal32::decimal32(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:245:5: note:
std::decimal::decimal32::decimal32(long int)
/opt/local/include/gcc47/c++/decimal/decimal:244:5: note:
std::decimal::decimal32::decimal32(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:243:5: note:
std::decimal::decimal32::decimal32(int)
/opt/local/include/gcc47/c++/decimal/decimal:240:14: note:
std::decimal::decimal32::decimal32(long double)
/opt/local/include/gcc47/c++/decimal/decimal:239:14: note:
std::decimal::decimal32::decimal32(double)
/opt/local/include/gcc47/c++/decimal/decimal:238:14: note:
std::decimal::decimal32::decimal32(float)
/opt/local/include/gcc47/c++/decimal/decimal:227:9: error: initializing
argument 1 of 'std::decimal::decimal32&
std::decimal::decimal32::operator=(const std::decimal::decimal32&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h: In function
'std::decimal::decimal64 std::decimal::make_decimal64(long long int, int)':
/opt/local/include/gcc47/c++/decimal/decimal.h:163:17: error: conversion
from '<unnamed-float:64>' to 'const std::decimal::decimal64' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:163:17: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:331:5: note:
std::decimal::decimal64::decimal64(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:330:5: note:
std::decimal::decimal64::decimal64(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:329:5: note:
std::decimal::decimal64::decimal64(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:328:5: note:
std::decimal::decimal64::decimal64(long int)
/opt/local/include/gcc47/c++/decimal/decimal:327:5: note:
std::decimal::decimal64::decimal64(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:326:5: note:
std::decimal::decimal64::decimal64(int)
/opt/local/include/gcc47/c++/decimal/decimal:323:14: note:
std::decimal::decimal64::decimal64(long double)
/opt/local/include/gcc47/c++/decimal/decimal:322:14: note:
std::decimal::decimal64::decimal64(double)
/opt/local/include/gcc47/c++/decimal/decimal:321:14: note:
std::decimal::decimal64::decimal64(float)
/opt/local/include/gcc47/c++/decimal/decimal:310:9: error: initializing
argument 1 of 'std::decimal::decimal64&
std::decimal::decimal64::operator=(const std::decimal::decimal64&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h:167:22: error: conversion
from '<unnamed-float:64>' to 'const std::decimal::decimal64' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:167:22: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:331:5: note:
std::decimal::decimal64::decimal64(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:330:5: note:
std::decimal::decimal64::decimal64(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:329:5: note:
std::decimal::decimal64::decimal64(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:328:5: note:
std::decimal::decimal64::decimal64(long int)
/opt/local/include/gcc47/c++/decimal/decimal:327:5: note:
std::decimal::decimal64::decimal64(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:326:5: note:
std::decimal::decimal64::decimal64(int)
/opt/local/include/gcc47/c++/decimal/decimal:323:14: note:
std::decimal::decimal64::decimal64(long double)
/opt/local/include/gcc47/c++/decimal/decimal:322:14: note:
std::decimal::decimal64::decimal64(double)
/opt/local/include/gcc47/c++/decimal/decimal:321:14: note:
std::decimal::decimal64::decimal64(float)
/opt/local/include/gcc47/c++/decimal/decimal:310:9: error: initializing
argument 1 of 'std::decimal::decimal64&
std::decimal::decimal64::operator=(const std::decimal::decimal64&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h: In function
'std::decimal::decimal64 std::decimal::make_decimal64(long long unsigned
int, int)':
/opt/local/include/gcc47/c++/decimal/decimal.h:181:17: error: conversion
from '<unnamed-float:64>' to 'const std::decimal::decimal64' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:181:17: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:331:5: note:
std::decimal::decimal64::decimal64(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:330:5: note:
std::decimal::decimal64::decimal64(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:329:5: note:
std::decimal::decimal64::decimal64(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:328:5: note:
std::decimal::decimal64::decimal64(long int)
/opt/local/include/gcc47/c++/decimal/decimal:327:5: note:
std::decimal::decimal64::decimal64(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:326:5: note:
std::decimal::decimal64::decimal64(int)
/opt/local/include/gcc47/c++/decimal/decimal:323:14: note:
std::decimal::decimal64::decimal64(long double)
/opt/local/include/gcc47/c++/decimal/decimal:322:14: note:
std::decimal::decimal64::decimal64(double)
/opt/local/include/gcc47/c++/decimal/decimal:321:14: note:
std::decimal::decimal64::decimal64(float)
/opt/local/include/gcc47/c++/decimal/decimal:310:9: error: initializing
argument 1 of 'std::decimal::decimal64&
std::decimal::decimal64::operator=(const std::decimal::decimal64&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h:185:22: error: conversion
from '<unnamed-float:64>' to 'const std::decimal::decimal64' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:185:22: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:331:5: note:
std::decimal::decimal64::decimal64(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:330:5: note:
std::decimal::decimal64::decimal64(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:329:5: note:
std::decimal::decimal64::decimal64(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:328:5: note:
std::decimal::decimal64::decimal64(long int)
/opt/local/include/gcc47/c++/decimal/decimal:327:5: note:
std::decimal::decimal64::decimal64(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:326:5: note:
std::decimal::decimal64::decimal64(int)
/opt/local/include/gcc47/c++/decimal/decimal:323:14: note:
std::decimal::decimal64::decimal64(long double)
/opt/local/include/gcc47/c++/decimal/decimal:322:14: note:
std::decimal::decimal64::decimal64(double)
/opt/local/include/gcc47/c++/decimal/decimal:321:14: note:
std::decimal::decimal64::decimal64(float)
/opt/local/include/gcc47/c++/decimal/decimal:310:9: error: initializing
argument 1 of 'std::decimal::decimal64&
std::decimal::decimal64::operator=(const std::decimal::decimal64&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h: In function
'std::decimal::decimal128 std::decimal::make_decimal128(long long int,
int)':
/opt/local/include/gcc47/c++/decimal/decimal.h:199:17: error: conversion
from '<unnamed-float:128>' to 'const std::decimal::decimal128' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:199:17: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:415:5: note:
std::decimal::decimal128::decimal128(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:414:5: note:
std::decimal::decimal128::decimal128(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:413:5: note:
std::decimal::decimal128::decimal128(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:412:5: note:
std::decimal::decimal128::decimal128(long int)
/opt/local/include/gcc47/c++/decimal/decimal:411:5: note:
std::decimal::decimal128::decimal128(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:410:5: note:
std::decimal::decimal128::decimal128(int)
/opt/local/include/gcc47/c++/decimal/decimal:406:14: note:
std::decimal::decimal128::decimal128(long double)
/opt/local/include/gcc47/c++/decimal/decimal:405:14: note:
std::decimal::decimal128::decimal128(double)
/opt/local/include/gcc47/c++/decimal/decimal:404:14: note:
std::decimal::decimal128::decimal128(float)
/opt/local/include/gcc47/c++/decimal/decimal:393:9: error: initializing
argument 1 of 'std::decimal::decimal128&
std::decimal::decimal128::operator=(const std::decimal::decimal128&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h:203:22: error: conversion
from '<unnamed-float:128>' to 'const std::decimal::decimal128' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:203:22: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:415:5: note:
std::decimal::decimal128::decimal128(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:414:5: note:
std::decimal::decimal128::decimal128(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:413:5: note:
std::decimal::decimal128::decimal128(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:412:5: note:
std::decimal::decimal128::decimal128(long int)
/opt/local/include/gcc47/c++/decimal/decimal:411:5: note:
std::decimal::decimal128::decimal128(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:410:5: note:
std::decimal::decimal128::decimal128(int)
/opt/local/include/gcc47/c++/decimal/decimal:406:14: note:
std::decimal::decimal128::decimal128(long double)
/opt/local/include/gcc47/c++/decimal/decimal:405:14: note:
std::decimal::decimal128::decimal128(double)
/opt/local/include/gcc47/c++/decimal/decimal:404:14: note:
std::decimal::decimal128::decimal128(float)
/opt/local/include/gcc47/c++/decimal/decimal:393:9: error: initializing
argument 1 of 'std::decimal::decimal128&
std::decimal::decimal128::operator=(const std::decimal::decimal128&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h: In function
'std::decimal::decimal128 std::decimal::make_decimal128(long long unsigned
int, int)':
/opt/local/include/gcc47/c++/decimal/decimal.h:217:17: error: conversion
from '<unnamed-float:128>' to 'const std::decimal::decimal128' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:217:17: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:415:5: note:
std::decimal::decimal128::decimal128(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:414:5: note:
std::decimal::decimal128::decimal128(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:413:5: note:
std::decimal::decimal128::decimal128(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:412:5: note:
std::decimal::decimal128::decimal128(long int)
/opt/local/include/gcc47/c++/decimal/decimal:411:5: note:
std::decimal::decimal128::decimal128(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:410:5: note:
std::decimal::decimal128::decimal128(int)
/opt/local/include/gcc47/c++/decimal/decimal:406:14: note:
std::decimal::decimal128::decimal128(long double)
/opt/local/include/gcc47/c++/decimal/decimal:405:14: note:
std::decimal::decimal128::decimal128(double)
/opt/local/include/gcc47/c++/decimal/decimal:404:14: note:
std::decimal::decimal128::decimal128(float)
/opt/local/include/gcc47/c++/decimal/decimal:393:9: error: initializing
argument 1 of 'std::decimal::decimal128&
std::decimal::decimal128::operator=(const std::decimal::decimal128&)'
In file included from /opt/local/include/gcc47/c++/decimal/decimal:483:0,
from main.cpp:2:
/opt/local/include/gcc47/c++/decimal/decimal.h:221:22: error: conversion
from '<unnamed-float:128>' to 'const std::decimal::decimal128' is ambiguous
/opt/local/include/gcc47/c++/decimal/decimal.h:221:22: note: candidates are:
In file included from main.cpp:2:0:
/opt/local/include/gcc47/c++/decimal/decimal:415:5: note:
std::decimal::decimal128::decimal128(long long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:414:5: note:
std::decimal::decimal128::decimal128(long long int)
/opt/local/include/gcc47/c++/decimal/decimal:413:5: note:
std::decimal::decimal128::decimal128(long unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:412:5: note:
std::decimal::decimal128::decimal128(long int)
/opt/local/include/gcc47/c++/decimal/decimal:411:5: note:
std::decimal::decimal128::decimal128(unsigned int)
/opt/local/include/gcc47/c++/decimal/decimal:410:5: note:
std::decimal::decimal128::decimal128(int)
/opt/local/include/gcc47/c++/decimal/decimal:406:14: note:
std::decimal::decimal128::decimal128(long double)
/opt/local/include/gcc47/c++/decimal/decimal:405:14: note:
std::decimal::decimal128::decimal128(double)
/opt/local/include/gcc47/c++/decimal/decimal:404:14: note:
std::decimal::decimal128::decimal128(float)
/opt/local/include/gcc47/c++/decimal/decimal:393:9: error: initializing
argument 1 of 'std::decimal::decimal128&
std::decimal::decimal128::operator=(const std::decimal::decimal128&)'

What does this mean? How can I make it work?



--
View this message in context: http://gcc.1065356.n5.nabble.com/Problems-with-decimal-decimal-header-on-OS-X-tp902209.html
Sent from the gcc - Help mailing list archive at Nabble.com.


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux