I have a program which uses boost 1.33.1 and it works fine with gcc 4.1 however now that I want to compile with gcc 4.4 it get many errors. For example somewhere in the boost files, it says:
/opt/boost_1_33_1/boost/mpl/aux_/numeric_op.hpp:250: error: expected unqualified-id before ‘:’ token
the code at that line is (note the second line): - #if !defined(BOOST_MPL_CFG_MSVC_ETI_BUG)
-
: AUX778076_OP_IMPL_NAME<
-
typename AUX778076_OP_TAG_NAME<N1>::type
-
, typename AUX778076_OP_TAG_NAME<N2>::type
-
>::template apply<N1,N2>::type
-
#else
-
: aux::msvc_eti_base< typename apply_wrap2<
-
AUX778076_OP_IMPL_NAME<
-
typename AUX778076_OP_TAG_NAME<N1>::type
-
, typename AUX778076_OP_TAG_NAME<N2>::type
-
>
-
, N1
-
, N2
-
>::type >::type
-
#endif
I know that boost 1.33.1 is old however I checked numeric_op.hpp in the latest boost release at http://svn.boost.org/svn/boost/trunk/boost/mpl/aux_/numeric_op.hpp and it is the same as before.
So any idea to solve that? thanks
5 3693 Banfa 9,065
Expert Mod 8TB
We don't want an example of the errors, we want the first error or given that this is a template issue the first 5 - 10 errors.
Once you have 1 error anything that follows is suspect because if may be on code that is correct but being interpreted incorrect because of that first error.
Also when you post code post the whole statement, what you have posted looks like it might be the base class clause of a class definition but we can't tell because you've missed out the beginning of the statement.
This is the full stack - compiling OneWayMuxImpl.cpp (g++)
-
In file included from /opt/boost_1_33_1/boost/mpl/aux_/arithmetic_op.hpp:26,
-
from /opt/boost_1_33_1/boost/mpl/plus.hpp:19,
-
from /opt/boost_1_33_1/boost/mpl/vector/aux_/iterator.hpp:19,
-
from /opt/boost_1_33_1/boost/mpl/vector/aux_/vector0.hpp:22,
-
from /opt/boost_1_33_1/boost/mpl/vector/aux_/clear.hpp:18,
-
from /opt/boost_1_33_1/boost/mpl/vector/vector0.hpp:24,
-
from /opt/boost_1_33_1/boost/mpl/vector/vector10.hpp:18,
-
from /opt/boost_1_33_1/boost/mpl/vector/vector20.hpp:18,
-
from /opt/boost_1_33_1/boost/mpl/vector/vector30.hpp:18,
-
from /opt/boost_1_33_1/boost/mpl/vector/vector40.hpp:18,
-
from /opt/boost_1_33_1/boost/mpl/vector/vector50.hpp:18,
-
from /opt/boost_1_33_1/boost/mpl/vector.hpp:36,
-
from /home/mahmood/flexus-4.0/core/metaprogram.hpp:57,
-
from /home/mahmood/flexus-4.0/core/configuration.hpp:50,
-
from /home/mahmood/flexus-4.0/core/simulator_layout.hpp:83,
-
from /home/mahmood/flexus-4.0/components/Common/OneWayMux.hpp:39,
-
from OneWayMuxImpl.cpp:39:
-
/opt/boost_1_33_1/boost/mpl/aux_/numeric_op.hpp:250: error: expected unqualified-id before ‘:’ token
The detail of each file at the mentioned line is:
OneWayMux.cpp:39 - #include <components/Common/OneWayMux.hpp>
OneWayMux.hpp:39 - #include <core/simulator_layout.hpp>
simulator_layout.hpp:83 - #define FLEXUS_IMPLEMENTATION_FILE
-
-
#include <core/types.hpp>
-
#include <core/debug/debug.hpp>
-
#include <core/component.hpp>
-
#include <core/configuration.hpp>
configuration.hpp:50 - #include <core/metaprogram.hpp>
metaprogram.hpp:57 - #define BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
-
#include <boost/mpl/vector.hpp>
-
-
#undef BOOST_MPL_NO_PREPROCESSED_HEADERS
vector.hpp:36 - # include BOOST_PP_STRINGIZE(boost/mpl/vector/AUX778076_VECTOR_HEADER)
-
# undef AUX778076_VECTOR_HEADER
vector50.hpp:18 - #if !defined(BOOST_MPL_PREPROCESSING_MODE)
-
# include <boost/mpl/vector/vector40.hpp>
-
#endif
vector40.hpp:18 - #if !defined(BOOST_MPL_PREPROCESSING_MODE)
-
# include <boost/mpl/vector/vector30.hpp>
-
#endif
vector30.hpp:18 - #if !defined(BOOST_MPL_PREPROCESSING_MODE)
-
# include <boost/mpl/vector/vector20.hpp>
-
#endif
vector20.hpp:18 - #if !defined(BOOST_MPL_PREPROCESSING_MODE)
-
# include <boost/mpl/vector/vector10.hpp>
-
#endif
vector10.hpp:18 - #if !defined(BOOST_MPL_PREPROCESSING_MODE)
-
# include <boost/mpl/vector/vector0.hpp>
-
#endif
vector0.hpp:24 - #include <boost/mpl/vector/aux_/clear.hpp>
clear.hpp:18 - #include <boost/mpl/vector/aux_/vector0.hpp>
vector0.hpp:22 - #include <boost/mpl/vector/aux_/iterator.hpp>
iterator.hpp:19 - #include <boost/mpl/plus.hpp>
plus.hpp:19 - #include <boost/mpl/aux_/arithmetic_op.hpp>
arithmetic_op.hpp:26 - #include <boost/mpl/aux_/numeric_op.hpp>
numeric_op.hpp:250 - #if !defined(BOOST_MPL_CFG_MSVC_ETI_BUG)
-
: AUX778076_OP_IMPL_NAME<
-
typename AUX778076_OP_TAG_NAME<N1>::type
-
, typename AUX778076_OP_TAG_NAME<N2>::type
-
>::template apply<N1,N2>::type
-
#else
-
: aux::msvc_eti_base< typename apply_wrap2<
-
AUX778076_OP_IMPL_NAME<
-
typename AUX778076_OP_TAG_NAME<N1>::type
-
, typename AUX778076_OP_TAG_NAME<N2>::type
-
>
-
, N1
-
, N2
-
>::type >::type
-
#endif
I hope I provide the right information you wanted
Banfa 9,065
Expert Mod 8TB
Actually I was hoping for a little more of numeric_op.hpp, the lines before what you have already posted but part from that very impressive detail.
Sorry for that. You may find this code snippet. -
{
-
BOOST_MPL_AUX_LAMBDA_SUPPORT(
-
AUX778076_OP_ARITY
-
, AUX778076_OP_NAME
-
, ( BOOST_MPL_PP_PARAMS(AUX778076_OP_ARITY, N) )
-
)
-
};
-
-
template<
-
typename N1
-
, typename N2
-
>
-
struct BOOST_PP_CAT(AUX778076_OP_NAME,2)
-
-
#endif
-
-
#else // AUX778076_OP_ARITY == 2
-
-
template<
-
typename BOOST_MPL_AUX_NA_PARAM(N1)
-
, typename BOOST_MPL_AUX_NA_PARAM(N2)
-
>
-
struct AUX778076_OP_NAME
-
-
#endif
-
-
#if !defined(BOOST_MPL_CFG_MSVC_ETI_BUG)
-
: AUX778076_OP_IMPL_NAME< // EERROORR
-
typename AUX778076_OP_TAG_NAME<N1>::type
-
, typename AUX778076_OP_TAG_NAME<N2>::type
-
>::template apply<N1,N2>::type
-
#else
-
: aux::msvc_eti_base< typename apply_wrap2<
-
AUX778076_OP_IMPL_NAME<
-
typename AUX778076_OP_TAG_NAME<N1>::type
-
, typename AUX778076_OP_TAG_NAME<N2>::type
-
>
-
, N1
-
, N2
-
>::type >::type
-
#endif
-
{
-
#if AUX778076_OP_ARITY != 2
-
-
# if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
-
BOOST_MPL_AUX_LAMBDA_SUPPORT_SPEC(
-
AUX778076_OP_ARITY
-
, AUX778076_OP_NAME
-
, ( BOOST_MPL_PP_PARTIAL_SPEC_PARAMS(2, N, na) )
-
)
-
# else
-
BOOST_MPL_AUX_LAMBDA_SUPPORT(2, BOOST_PP_CAT(AUX778076_OP_NAME,2), (N1, N2))
-
# endif
-
-
#else
-
BOOST_MPL_AUX_LAMBDA_SUPPORT(2, AUX778076_OP_NAME, (N1, N2))
-
#endif
-
};
-
I find the solution fairly easy....
I did a diff for numeric_op.hpp between 1.33.1 and current 1.46 (revision 70743) and found little differences in lines between two files. I did replace the old one with new one and the error disappeared.
I want to upload the files but don't see any attachment link. Where can I upload the files?
Sign in to post your reply or Sign up for a free account.
Similar topics
by: C. M. Sperberg-McQueen |
last post by:
wooks (wookiz@hotmail.com) wrote:
> <?xml version='1.0'?>
> <userlogin xmlns="urn:faster:userlogin"
> xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
> <login>mick</login>
> ...
|
by: Erik Moore |
last post by:
I am both producing and parsing an xml document that needs to be validated against a schema. I wanted some consumers of the document
to have the option of not performing a validation, so I left the...
|
by: Goodmannewz |
last post by:
In the textbook, there is a sentence that "Default XML
namespaces(xmlns="...") helps a lot, but can also create problems, as a side
effect of the rules for automatic qualification. How to...
|
by: Jeff S |
last post by:
I have the following three lines at the very top of a class file (prior to
the namespace declaration line).
using System;
using System.Data;
using System.Data.SqlClient;
Then, in a...
|
by: Simon |
last post by:
Hi -
I have a webservice with WSDL specifying 'elementFormDefault' set to
'unqualified'. I find when I try to process the incoming XML the raw XML
either looks like this:
<s0:rootelement...
|
by: mavis |
last post by:
Unqualified element in XSD definition
For some reason, we may need to define elements in XSD to be
"unqualified".
According to the design patterns of XSD, it seems they do not recommend
...
|
by: Mark Olbert |
last post by:
I'm trying to serialize (using XmlSerializer.Serialize) a class that I generated from an XSD schema using XSD.EXE /c.
The problem I'm running into is that the root element needs to be unqualified,...
|
by: Jeremy |
last post by:
I've got two projects, both reference system, system.data and system.xml and
both include the using System.Xml.Serialization and using System at the top
of the file.
Both also include the...
|
by: Stef Mientki |
last post by:
hello,
I've syntax error which I totally don't understand:
########## mainfile :
import test_upframe2
if __name__ == '__main__':
var1 = 33
code = 'print var1 + 3 \n'
|
by: Terry Reedy |
last post by:
Stef Mientki wrote:
Indendation is screwed. Is the above all do_more body?
Which locals does this get you? __init__'s? (locals()?)
Isn't this just the same as globals()?
|
by: taylorcarr |
last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: aa123db |
last post by:
Variable and constants
Use var or let for variables and const fror constants.
Var foo ='bar';
Let foo ='bar';const baz ='bar';
Functions
function $name$ ($parameters$) {
}
...
|
by: ryjfgjl |
last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
|
by: emmanuelkatto |
last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud.
Please let me know.
Thanks!
Emmanuel
|
by: BarryA |
last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
|
by: Hystou |
last post by:
There are some requirements for setting up RAID:
1. The motherboard and BIOS support RAID configuration.
2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers,...
| |