diff --git a/icu4c/source/common/Makefile.in b/icu4c/source/common/Makefile.in
index 4c1f68123df..9fbf18d6aaa 100644
--- a/icu4c/source/common/Makefile.in
+++ b/icu4c/source/common/Makefile.in
@@ -53,23 +53,23 @@ DEFS += -DU_COMMON_IMPLEMENTATION
# $(LIBICUDT) is either stub data or the real DLL common data.
LIBS = $(LIBICUDT) $(DEFAULT_LIBS)
-OBJECTS = putil.o uobject.o locmap.o umutex.o \
-udata.o ucmndata.o udatamem.o udataswp.o umapfile.o filestrm.o \
-uresbund.o uresdata.o resbund.o cwchar.o uloc.o locid.o uhash.o uhash_us.o \
+OBJECTS = putil.o uobject.o cmemory.o umutex.o \
+udata.o ucmndata.o udatamem.o udataswp.o umapfile.o \
+uresbund.o uresdata.o resbund.o ucat.o locmap.o uloc.o locid.o \
+uhash.o uhash_us.o \
ucnv.o ucnv_bld.o ucnv_cb.o ucnv_cnv.o ucnv_err.o ucnv_io.o ucnvlat1.o \
-ucnv_u7.o ucnv_u8.o ucnv_u16.o ucnv_u32.o \
-ucnvmbcs.o ucnv2022.o ucnvhz.o ucnv_lmb.o ucnvscsu.o \
-ucnvbocu.o ucnvisci.o \
+ucnv_u7.o ucnv_u8.o ucnv_u16.o ucnv_u32.o ucnvscsu.o ucnvbocu.o \
+ucnvmbcs.o ucnv2022.o ucnvhz.o ucnv_lmb.o ucnvisci.o \
unistr.o utf_impl.o ustring.o ustrcase.o cstring.o ustrfmt.o ustrtrns.o \
normlzr.o unorm.o unorm_it.o chariter.o schriter.o uchriter.o uiter.o \
uchar.o uprops.o propname.o ubidi.o ubidiwrt.o ubidiln.o ushape.o unames.o \
-ucln_cmn.o uscript.o usc_impl.o umemstrm.o ucmp8.o uvector.o uvectr32.o digitlst.o \
+ucln_cmn.o uscript.o usc_impl.o uvector.o ustack.o uvectr32.o ucmp8.o \
+uarrsort.o utrie.o uset.o uniset.o caniter.o unifilt.o unifunct.o usetiter.o \
brkiter.o brkdict.o ubrk.o dbbi.o dbbi_tbl.o \
rbbi.o rbbidata.o rbbinode.o rbbirb.o rbbiscan.o rbbisetb.o rbbistbl.o rbbitblb.o \
-uarrsort.o utrie.o uset.o cmemory.o caniter.o \
-unifilt.o unifunct.o uniset.o usetiter.o util.o uenum.o \
-icuserv.o iculserv.o icunotif.o ustrenum.o \
-uidna.o usprep.o punycode.o ucat.o
+icuserv.o iculserv.o icunotif.o uenum.o ustrenum.o \
+uidna.o usprep.o punycode.o \
+cwchar.o filestrm.o umemstrm.o digitlst.o util.o parsepos.o
STATIC_OBJECTS = $(OBJECTS:.o=.$(STATIC_O))
diff --git a/icu4c/source/common/common.dsp b/icu4c/source/common/common.dsp
index 76bc4724a76..4afa53f31e5 100644
--- a/icu4c/source/common/common.dsp
+++ b/icu4c/source/common/common.dsp
@@ -683,6 +683,10 @@ SOURCE=.\uhash_us.cpp
# End Source File
# Begin Source File
+SOURCE=.\ustack.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\ustrenum.cpp
# End Source File
# Begin Source File
@@ -1605,6 +1609,10 @@ InputPath=.\unicode\parseerr.h
# End Source File
# Begin Source File
+SOURCE=.\parsepos.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\unicode\parsepos.h
!IF "$(CFG)" == "common - Win32 Release"
diff --git a/icu4c/source/common/common.vcproj b/icu4c/source/common/common.vcproj
index c2cf738533e..6131d7c2ea9 100644
--- a/icu4c/source/common/common.vcproj
+++ b/icu4c/source/common/common.vcproj
@@ -147,16 +147,14 @@
Name="Release|Win32">
@@ -178,17 +176,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -210,17 +206,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -350,17 +338,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+
+
@@ -482,17 +469,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -649,17 +622,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -900,36 +861,35 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+
+
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -976,17 +934,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -1407,17 +1333,15 @@
Name="Release|Win32">
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -1705,13 +1605,19 @@
+
+
+
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
@@ -1726,13 +1632,19 @@
+
+
+
+ CommandLine="copy $(InputPath) ..\..\include\unicode"
+ Outputs="..\..\include\unicode\$(InputName).h"/>
diff --git a/icu4c/source/common/parsepos.cpp b/icu4c/source/common/parsepos.cpp
new file mode 100644
index 00000000000..5fbcad68815
--- /dev/null
+++ b/icu4c/source/common/parsepos.cpp
@@ -0,0 +1,16 @@
+/*
+**********************************************************************
+* Copyright (C) 2003-2003, International Business Machines
+* Corporation and others. All Rights Reserved.
+**********************************************************************
+*/
+
+#include "unicode/parsepos.h"
+
+U_NAMESPACE_BEGIN
+
+UOBJECT_DEFINE_RTTI_IMPLEMENTATION(ParsePosition)
+
+ParsePosition::~ParsePosition() {}
+
+U_NAMESPACE_END
diff --git a/icu4c/source/common/uniset.cpp b/icu4c/source/common/uniset.cpp
index be10d07ccba..143f07562ba 100644
--- a/icu4c/source/common/uniset.cpp
+++ b/icu4c/source/common/uniset.cpp
@@ -71,12 +71,12 @@ static const char NAME_PROP[] = "na"; // Unicode name property alias
// these four C99-compatibility properties are implemented
// as enums/names.
U_CDECL_BEGIN
- typedef UBool (U_CALLCONV *_C99_Property_Function)(UChar32);
+ typedef UBool (U_CALLCONV *C99_Property_Function)(UChar32);
U_CDECL_END
-static const struct _C99_Map {
+static const struct C99_Map {
const char* name;
- _C99_Property_Function func;
-} _C99_DISPATCH[] = {
+ C99_Property_Function func;
+} C99_DISPATCH[] = {
// These three entries omitted; they clash with PropertyAliases
// names for Unicode properties, so UnicodeSet already maps them
// to those properties.
@@ -95,7 +95,7 @@ static const struct _C99_Map {
{ "title", u_istitle },
{ "xdigit", u_isxdigit }
};
-#define _C99_COUNT (9)
+#define C99_COUNT (9)
// TEMPORARY: Remove when deprecated category code constructor is removed.
static const UChar CATEGORY_NAMES[] = {
@@ -141,8 +141,6 @@ static const UChar CATEGORY_CLOSE[] = {COLON, SET_CLOSE, 0x0000}; /* ":]" */
U_NAMESPACE_BEGIN
-UOBJECT_DEFINE_RTTI_IMPLEMENTATION(ParsePosition)
-ParsePosition::~ParsePosition() {}
SymbolTable::~SymbolTable() {}
/**
@@ -2760,7 +2758,7 @@ static UBool mungeCharName(char* dst, const char* src, int32_t dstCapacity) {
// these four C99-compatibility properties are implemented
// as enums/names.
static UBool c99Filter(UChar32 ch, void* context) {
- struct _C99_Map* m = (struct _C99_Map*) context;
+ struct C99_Map* m = (struct C99_Map*) context;
return m->func(ch);
}
@@ -2925,10 +2923,10 @@ UnicodeSet::applyPropertyAlias(const UnicodeString& prop,
// TODO: Remove the following special-case code when
// these four C99-compatibility properties are implemented
// as enums/names.
- for (int32_t i=0; i<_C99_COUNT; ++i) {
- int32_t c = uprv_comparePropertyNames(pname, _C99_DISPATCH[i].name);
+ for (int32_t i=0; i