+// Copyright (C) 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
/*
*******************************************************************************
* Copyright (C) 2008-2016, International Business Machines Corporation and
class U_I18N_API DateIntervalInfo U_FINAL : public UObject {
public:
-#ifndef U_HIDE_INTERNAL_API
+ // Do not enclose the protected default constructor with #ifndef U_HIDE_INTERNAL_API
+ // or else the compiler will create a public default constructor.
/**
* Default constructor.
* It does not initialize any interval patterns except
* @internal ICU 4.0
*/
DateIntervalInfo(UErrorCode& status);
-#endif /* U_HIDE_INTERNAL_API */
/**
*/
friend class DateIntervalFormat;
- friend struct DateIntervalSink;
+ /**
+ * Internal struct used to load resource bundle data.
+ */
+ struct DateIntervalSink;
/**
* Following is for saving the interval patterns.