This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libstdc++ XPASS's on Darwin


On Aug 17, 2006, at 11:42 AM, Jack Howarth wrote:
Well, I note sure how to handle some of these testcases. For instance,
1_strings/basic_string/element_access/char/21674.cc has...


// { dg-require-debug-mode "" }
// { dg-options "-O0 -D_GLIBCXX_DEBUG" }
// { dg-do run { xfail *-*-* } }

Well, if it now passes everywhere, then the xfail clause can be removed. I don't know if it does.



...which I assume implies that it really should only be set to fail
on systems which use glibc.

Nope. _GLIBCXX_DEBUG is the debug mode thing in the library, unrelated to glibc.


Does the xfail statement have some boolean logic available so that we can say xfail on all systems that aren't darwin8?

Not sure if it carries over, but other parts can do:


/* { dg-do compile { target { { i?86-*-* rs6000-*-* alpha*-*-* x86_64- *-* } || { powerpc*-*-* && ilp32 } } } } */

so it might be possible. At worse, I think one can add a flag conditionally, and then use the check_conditional_xfail functionality to look for that flag.

target-suppports-dg has:

# Intercept the call to the DejaGnu version of dg-process-target to
# support use of an effective-target keyword in place of a list of
# target triplets to xfail or skip a test.
#
# selector is one of:
# xfail target-triplet-1 ...
# xfail effective-target-keyword
# xfail selector-expression
# target target-triplet-1 ...
# target effective-target-keyword
# target selector-expression
#
# For a target list the result is "S" if the target is selected, "N" otherwise.
# For an xfail list the result is "F" if the target is affected, "P" otherwise.
#
# A selector expression appears within curly braces and uses a single logical
# operator: !, &&, or ||. An operand is another selector expression, an
# effective-target keyword, or a list of target triplets within quotes or
# curly braces.


so it seems like one could make use of that if needed.

The 23_containers/vector/resize/1.cc is Radar 3884894

That was fixed in Tiger8H14 (aka 10.4.5) and later. I think it is fine to require an up-to-date soft update status personally, otherwise, one can do *-*-darwin8.[0-4] if one cared.


and can be fixed by just deleting "// { dg-do run { xfail *-*- darwin8* } }".

I'm fine with that.


The 26_numerics/cmath/c99_classification_macros_c.cc xfail can
be fixed by just deleting the "*-*-darwin*" sections.

Bearing in mind Paolo's comment about past OS versions... You should use darwin[0 7], if it now runs on 8 and you're unsure.


Lastly, 27_io/ios_base/storage/2.cc is Radar 3884894 (same as 1.cc) and
explicitly notes that Darwin 8 fails because malloc doesn't return
a NULL even if an allocation fails. I assume that may have been fixed
by MacOS X 10.4.7.

Yes, it was, but also fixed by 10.4.5, see comment above.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]