Please do not reply directly to this email. All additional comments should be made in the comments box of this bug report.
Summary: Review Request: ppl-0.9 - A modern C++ library providing numerical abstractions
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=227669
------- Additional Comments From bagnara@cs.unipr.it 2007-06-08 11:49 EST -------
- Definitions in header files
- Some definitions in some header files are very dangerous and may easyly cause definition conflict. For example, /usr/include/ppl.hh has some definitions such that
#define HAVE_SYS_TYPES_H 1
#define HAVE_UNISTD_H 1
... etc. These definition names are too generic and may cause conflicts on definition name space when other header files from other packages are included. Generally, these types of generic "#define" macro should be included in header files. Remove unneeded (and dangerous) #define and #ifdef macros or change the names of macros to less generic.
And note that #ifdef macros are generally unhappy. At least please ensure that #ifdef judgment does not affect the ABI of the libraries.
(Same for /usr/include/pwl.hh in -pwl-devel package)
I have started addressing this problem for PPL 0.10. As you can see from
http://www.cs.unipr.it/pipermail/ppl-devel/2007-June/010880.html http://www.cs.unipr.it/pipermail/ppl-devel/2007-June/010879.html
this requires changing many files that PPL 0.9 (our stable release) is better left alone (also because no user has complained up to now).