Author: vitek
Date: Fri Mar 28 10:32:37 2008
New Revision: 642312
URL: http://svn.apache.org/viewvc?rev=642312&view=rev
Log:
2008-03-28 Travis Vitek <[EMAIL PROTECTED]>
STDCXX-784
* tess/src/braceexp.cpp [_RWSTD_NO_NESTED_CLASS_ACCESS]: Work
around issue that causes a compile failure when using private
declarations in nested types.
Modified:
stdcxx/trunk/tests/src/braceexp.cpp
Modified: stdcxx/trunk/tests/src/braceexp.cpp
URL:
http://svn.apache.org/viewvc/stdcxx/trunk/tests/src/braceexp.cpp?rev=642312&r1=642311&r2=642312&view=diff
==============================================================================
--- stdcxx/trunk/tests/src/braceexp.cpp (original)
+++ stdcxx/trunk/tests/src/braceexp.cpp Fri Mar 28 10:32:37 2008
@@ -262,11 +262,11 @@
char* buf, _RWSTD_SIZE_T len, char sep);
-# if defined(__SUNPRO_CC) && (__SUNPRO_CC < 0x570)
-public:
-# else
private:
-# endif // __SUNPRO_CC && 0x560 < __SUNPRO_CC
+
+ // not implemented
+ _rw_brace_graph (const _rw_brace_graph&);
+ _rw_brace_graph& operator= (const _rw_brace_graph&);
// node for a directed-acyclic-graph that we build from the original
// brace expression
@@ -279,15 +279,6 @@
_rw_brace_node* child_;
};
- // the number of nodes held by each brace buffer [see below]
- enum { size = 64 };
-
-private:
-
- // not implemented
- _rw_brace_graph (const _rw_brace_graph&);
- _rw_brace_graph& operator= (const _rw_brace_graph&);
-
// retrieve a new node. nodes are allocated in large blocks. those
// blocks are deallocated when this graph instance is destroyed.
// and they are reused for every build_and_expand() call.
@@ -315,6 +306,23 @@
// format is `{a,b[,c]}suffix', where `a', `b' and `c' are full
// brace expansions that would be processed by build_anything.
_rw_brace_node* build_list (const char* beg, const char* end);
+
+ // the number of nodes held by each brace buffer [see below]
+ enum { size = 64 };
+
+#ifdef _RWSTD_NO_NESTED_CLASS_ACCESS
+
+ // allow _rw_brace_node_buffer access to _rw_brace_graph's private
+ // type(s) if the resolution of cwg issue 45 is not yet implemented
+ struct _rw_brace_node_buffer;
+ friend struct _rw_brace_node_buffer;
+
+ // allow _rw_recursion_context access to _rw_brace_graph's private
+ // type(s) if the resolution of cwg issue 45 is not yet implemented
+ struct _rw_recursion_context;
+ friend struct _rw_recursion_context;
+
+#endif // _RWSTD_NO_NESTED_CLASS_ACCESS
// this is essentially a rope with a fixed length payload of
// brace nodes