aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-03-01 23:44:34 -0800
committerRob Mensching <rob@firegiant.com>2021-03-02 02:21:22 -0800
commit166186a5831bd515939544a8f662938d5ae755e3 (patch)
tree35b3c4b3d0ef0bb7ea128197ffa22955a1d49590
parent85e611c40c3c8bf3ff3b06b52d53d046bc8ff392 (diff)
downloadwix-166186a5831bd515939544a8f662938d5ae755e3.tar.gz
wix-166186a5831bd515939544a8f662938d5ae755e3.tar.bz2
wix-166186a5831bd515939544a8f662938d5ae755e3.zip
Support the new names for AccessModifiers
-rw-r--r--src/WixToolset.Core.Burn/Bundles/AutomaticallySlipstreamPatchesCommand.cs2
-rw-r--r--src/WixToolset.Core.Burn/Bundles/CreateBootstrapperApplicationManifestCommand.cs2
-rw-r--r--src/WixToolset.Core.Burn/Bundles/CreateBundleExtensionManifestCommand.cs2
-rw-r--r--src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs8
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs4
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/CreateSpecialPropertiesCommand.cs6
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/ExtractMergeModuleFilesCommand.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/ProcessDependencyReferencesCommand.cs8
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/UpdateFileFacadesCommand.cs2
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs4
-rw-r--r--src/WixToolset.Core/Bind/FileFacade.cs2
-rw-r--r--src/WixToolset.Core/Compiler.cs58
-rw-r--r--src/WixToolset.Core/Compiler_Bundle.cs28
-rw-r--r--src/WixToolset.Core/Compiler_Module.cs4
-rw-r--r--src/WixToolset.Core/Compiler_Package.cs32
-rw-r--r--src/WixToolset.Core/Compiler_Patch.cs4
-rw-r--r--src/WixToolset.Core/Compiler_PatchCreation.cs2
-rw-r--r--src/WixToolset.Core/Compiler_Tag.cs2
-rw-r--r--src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs18
-rw-r--r--src/WixToolset.Core/Link/FindEntrySectionAndLoadSymbolsCommand.cs2
-rw-r--r--src/WixToolset.Core/Link/ResolveReferencesCommand.cs8
21 files changed, 101 insertions, 99 deletions
diff --git a/src/WixToolset.Core.Burn/Bundles/AutomaticallySlipstreamPatchesCommand.cs b/src/WixToolset.Core.Burn/Bundles/AutomaticallySlipstreamPatchesCommand.cs
index 30edf7de..75c60e56 100644
--- a/src/WixToolset.Core.Burn/Bundles/AutomaticallySlipstreamPatchesCommand.cs
+++ b/src/WixToolset.Core.Burn/Bundles/AutomaticallySlipstreamPatchesCommand.cs
@@ -98,7 +98,7 @@ namespace WixToolset.Core.Burn.Bundles
98 98
99 private bool TryAddSlipstreamSymbol(HashSet<string> slipstreamMspIds, WixBundleMsiPackageSymbol msiPackage, WixBundlePatchTargetCodeSymbol patchTargetCode) 99 private bool TryAddSlipstreamSymbol(HashSet<string> slipstreamMspIds, WixBundleMsiPackageSymbol msiPackage, WixBundlePatchTargetCodeSymbol patchTargetCode)
100 { 100 {
101 var id = new Identifier(AccessModifier.Private, msiPackage.Id.Id, patchTargetCode.PackageRef); 101 var id = new Identifier(AccessModifier.Section, msiPackage.Id.Id, patchTargetCode.PackageRef);
102 102
103 if (slipstreamMspIds.Add(id.Id)) 103 if (slipstreamMspIds.Add(id.Id))
104 { 104 {
diff --git a/src/WixToolset.Core.Burn/Bundles/CreateBootstrapperApplicationManifestCommand.cs b/src/WixToolset.Core.Burn/Bundles/CreateBootstrapperApplicationManifestCommand.cs
index b4648d18..f85a5b62 100644
--- a/src/WixToolset.Core.Burn/Bundles/CreateBootstrapperApplicationManifestCommand.cs
+++ b/src/WixToolset.Core.Burn/Bundles/CreateBootstrapperApplicationManifestCommand.cs
@@ -247,7 +247,7 @@ namespace WixToolset.Core.Burn.Bundles
247 { 247 {
248 var generatedId = Common.GenerateIdentifier("ux", BurnCommon.BADataFileName); 248 var generatedId = Common.GenerateIdentifier("ux", BurnCommon.BADataFileName);
249 249
250 var symbol = this.Section.AddSymbol(new WixBundlePayloadSymbol(this.BundleSymbol.SourceLineNumbers, new Identifier(AccessModifier.Private, generatedId)) 250 var symbol = this.Section.AddSymbol(new WixBundlePayloadSymbol(this.BundleSymbol.SourceLineNumbers, new Identifier(AccessModifier.Section, generatedId))
251 { 251 {
252 Name = BurnCommon.BADataFileName, 252 Name = BurnCommon.BADataFileName,
253 SourceFile = new IntermediateFieldPathValue { Path = baManifestPath }, 253 SourceFile = new IntermediateFieldPathValue { Path = baManifestPath },
diff --git a/src/WixToolset.Core.Burn/Bundles/CreateBundleExtensionManifestCommand.cs b/src/WixToolset.Core.Burn/Bundles/CreateBundleExtensionManifestCommand.cs
index 74ccd895..9e1f85bc 100644
--- a/src/WixToolset.Core.Burn/Bundles/CreateBundleExtensionManifestCommand.cs
+++ b/src/WixToolset.Core.Burn/Bundles/CreateBundleExtensionManifestCommand.cs
@@ -68,7 +68,7 @@ namespace WixToolset.Core.Burn.Bundles
68 { 68 {
69 var generatedId = Common.GenerateIdentifier("ux", BurnCommon.BundleExtensionDataFileName); 69 var generatedId = Common.GenerateIdentifier("ux", BurnCommon.BundleExtensionDataFileName);
70 70
71 var symbol = this.Section.AddSymbol(new WixBundlePayloadSymbol(this.BundleSymbol.SourceLineNumbers, new Identifier(AccessModifier.Private, generatedId)) 71 var symbol = this.Section.AddSymbol(new WixBundlePayloadSymbol(this.BundleSymbol.SourceLineNumbers, new Identifier(AccessModifier.Section, generatedId))
72 { 72 {
73 Name = BurnCommon.BundleExtensionDataFileName, 73 Name = BurnCommon.BundleExtensionDataFileName,
74 SourceFile = new IntermediateFieldPathValue { Path = bextManifestPath }, 74 SourceFile = new IntermediateFieldPathValue { Path = bextManifestPath },
diff --git a/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs b/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs
index 017f29bc..b598af96 100644
--- a/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs
+++ b/src/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs
@@ -358,7 +358,7 @@ namespace WixToolset.Core.Burn.Bundles
358 } 358 }
359 } 359 }
360 360
361 this.Section.AddSymbol(new WixBundleMsiFeatureSymbol(this.Facade.PackageSymbol.SourceLineNumbers, new Identifier(AccessModifier.Private, this.Facade.PackageId, featureName)) 361 this.Section.AddSymbol(new WixBundleMsiFeatureSymbol(this.Facade.PackageSymbol.SourceLineNumbers, new Identifier(AccessModifier.Section, this.Facade.PackageId, featureName))
362 { 362 {
363 PackageRef = this.Facade.PackageId, 363 PackageRef = this.Facade.PackageId,
364 Name = featureName, 364 Name = featureName,
@@ -397,7 +397,7 @@ namespace WixToolset.Core.Burn.Bundles
397 var generatedId = Common.GenerateIdentifier("cab", packagePayload.Id.Id, cabinet); 397 var generatedId = Common.GenerateIdentifier("cab", packagePayload.Id.Id, cabinet);
398 var payloadSourceFile = this.ResolveRelatedFile(packagePayload.SourceFile.Path, packagePayload.UnresolvedSourceFile, cabinet, "Cabinet", this.Facade.PackageSymbol.SourceLineNumbers); 398 var payloadSourceFile = this.ResolveRelatedFile(packagePayload.SourceFile.Path, packagePayload.UnresolvedSourceFile, cabinet, "Cabinet", this.Facade.PackageSymbol.SourceLineNumbers);
399 399
400 this.Section.AddSymbol(new WixBundlePayloadSymbol(this.Facade.PackageSymbol.SourceLineNumbers, new Identifier(AccessModifier.Private, generatedId)) 400 this.Section.AddSymbol(new WixBundlePayloadSymbol(this.Facade.PackageSymbol.SourceLineNumbers, new Identifier(AccessModifier.Section, generatedId))
401 { 401 {
402 Name = cabinetName, 402 Name = cabinetName,
403 SourceFile = new IntermediateFieldPathValue { Path = payloadSourceFile }, 403 SourceFile = new IntermediateFieldPathValue { Path = payloadSourceFile },
@@ -474,7 +474,7 @@ namespace WixToolset.Core.Burn.Bundles
474 var generatedId = Common.GenerateIdentifier("f", packagePayload.Id.Id, record.GetString(2)); 474 var generatedId = Common.GenerateIdentifier("f", packagePayload.Id.Id, record.GetString(2));
475 var payloadSourceFile = this.ResolveRelatedFile(packagePayload.SourceFile.Path, packagePayload.UnresolvedSourceFile, fileSourcePath, "File", this.Facade.PackageSymbol.SourceLineNumbers); 475 var payloadSourceFile = this.ResolveRelatedFile(packagePayload.SourceFile.Path, packagePayload.UnresolvedSourceFile, fileSourcePath, "File", this.Facade.PackageSymbol.SourceLineNumbers);
476 476
477 this.Section.AddSymbol(new WixBundlePayloadSymbol(this.Facade.PackageSymbol.SourceLineNumbers, new Identifier(AccessModifier.Private, generatedId)) 477 this.Section.AddSymbol(new WixBundlePayloadSymbol(this.Facade.PackageSymbol.SourceLineNumbers, new Identifier(AccessModifier.Section, generatedId))
478 { 478 {
479 Name = name, 479 Name = name,
480 SourceFile = new IntermediateFieldPathValue { Path = payloadSourceFile }, 480 SourceFile = new IntermediateFieldPathValue { Path = payloadSourceFile },
@@ -500,7 +500,7 @@ namespace WixToolset.Core.Burn.Bundles
500 500
501 private void AddMsiProperty(WixBundleMsiPackageSymbol msiPackage, string name, string value) 501 private void AddMsiProperty(WixBundleMsiPackageSymbol msiPackage, string name, string value)
502 { 502 {
503 this.Section.AddSymbol(new WixBundleMsiPropertySymbol(msiPackage.SourceLineNumbers, new Identifier(AccessModifier.Private, msiPackage.Id.Id, name)) 503 this.Section.AddSymbol(new WixBundleMsiPropertySymbol(msiPackage.SourceLineNumbers, new Identifier(AccessModifier.Section, msiPackage.Id.Id, name))
504 { 504 {
505 PackageRef = msiPackage.Id.Id, 505 PackageRef = msiPackage.Id.Id,
506 Name = name, 506 Name = name,
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs
index 301c3246..f6c61866 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/AssignMediaCommand.cs
@@ -220,7 +220,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
220 // If there are uncompressed files and no MediaRow, create a default one. 220 // If there are uncompressed files and no MediaRow, create a default one.
221 if (uncompressedFiles.Count > 0 && !this.Section.Symbols.OfType<MediaSymbol>().Any()) 221 if (uncompressedFiles.Count > 0 && !this.Section.Symbols.OfType<MediaSymbol>().Any())
222 { 222 {
223 var defaultMediaRow = this.Section.AddSymbol(new MediaSymbol(null, new Identifier(AccessModifier.Private, 1)) 223 var defaultMediaRow = this.Section.AddSymbol(new MediaSymbol(null, new Identifier(AccessModifier.Section, 1))
224 { 224 {
225 DiskId = 1, 225 DiskId = 1,
226 }); 226 });
@@ -299,7 +299,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
299 /// <returns></returns> 299 /// <returns></returns>
300 private MediaSymbol AddMediaSymbol(WixMediaTemplateSymbol mediaTemplateSymbol, int cabIndex) 300 private MediaSymbol AddMediaSymbol(WixMediaTemplateSymbol mediaTemplateSymbol, int cabIndex)
301 { 301 {
302 return this.Section.AddSymbol(new MediaSymbol(mediaTemplateSymbol.SourceLineNumbers, new Identifier(AccessModifier.Private, cabIndex)) 302 return this.Section.AddSymbol(new MediaSymbol(mediaTemplateSymbol.SourceLineNumbers, new Identifier(AccessModifier.Section, cabIndex))
303 { 303 {
304 DiskId = cabIndex, 304 DiskId = cabIndex,
305 Cabinet = String.Format(CultureInfo.InvariantCulture, this.CabinetNameTemplate, cabIndex), 305 Cabinet = String.Format(CultureInfo.InvariantCulture, this.CabinetNameTemplate, cabIndex),
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/CreateSpecialPropertiesCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/CreateSpecialPropertiesCommand.cs
index 0a042f48..ba7c03a0 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/CreateSpecialPropertiesCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/CreateSpecialPropertiesCommand.cs
@@ -57,7 +57,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
57 57
58 if (0 < adminProperties.Count) 58 if (0 < adminProperties.Count)
59 { 59 {
60 this.Section.AddSymbol(new PropertySymbol(null, new Identifier(AccessModifier.Private, "AdminProperties")) 60 this.Section.AddSymbol(new PropertySymbol(null, new Identifier(AccessModifier.Section, "AdminProperties"))
61 { 61 {
62 Value = String.Join(";", adminProperties), 62 Value = String.Join(";", adminProperties),
63 }); 63 });
@@ -65,7 +65,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
65 65
66 if (0 < secureProperties.Count) 66 if (0 < secureProperties.Count)
67 { 67 {
68 this.Section.AddSymbol(new PropertySymbol(null, new Identifier(AccessModifier.Private, "SecureCustomProperties")) 68 this.Section.AddSymbol(new PropertySymbol(null, new Identifier(AccessModifier.Section, "SecureCustomProperties"))
69 { 69 {
70 Value = String.Join(";", secureProperties), 70 Value = String.Join(";", secureProperties),
71 }); 71 });
@@ -73,7 +73,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
73 73
74 if (0 < hiddenProperties.Count) 74 if (0 < hiddenProperties.Count)
75 { 75 {
76 this.Section.AddSymbol(new PropertySymbol(null, new Identifier(AccessModifier.Private, "MsiHiddenProperties")) 76 this.Section.AddSymbol(new PropertySymbol(null, new Identifier(AccessModifier.Section, "MsiHiddenProperties"))
77 { 77 {
78 Value = String.Join(";", hiddenProperties) 78 Value = String.Join(";", hiddenProperties)
79 }); 79 });
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/ExtractMergeModuleFilesCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/ExtractMergeModuleFilesCommand.cs
index 37bda235..e33b38b1 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/ExtractMergeModuleFilesCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/ExtractMergeModuleFilesCommand.cs
@@ -96,7 +96,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
96 // NOTE: this is very tricky - the merge module file rows are not added to the 96 // NOTE: this is very tricky - the merge module file rows are not added to the
97 // file table because they should not be created via idt import. Instead, these 97 // file table because they should not be created via idt import. Instead, these
98 // rows are created by merging in the actual modules. 98 // rows are created by merging in the actual modules.
99 var fileSymbol = new FileSymbol(wixMergeRow.SourceLineNumbers, new Identifier(AccessModifier.Private, record[1])); 99 var fileSymbol = new FileSymbol(wixMergeRow.SourceLineNumbers, new Identifier(AccessModifier.Section, record[1]));
100 fileSymbol.Attributes = wixMergeRow.FileAttributes; 100 fileSymbol.Attributes = wixMergeRow.FileAttributes;
101 fileSymbol.DirectoryRef = record[2]; 101 fileSymbol.DirectoryRef = record[2];
102 fileSymbol.DiskId = wixMergeRow.DiskId; 102 fileSymbol.DiskId = wixMergeRow.DiskId;
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/ProcessDependencyReferencesCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/ProcessDependencyReferencesCommand.cs
index 899d06e1..0ae7ca73 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/ProcessDependencyReferencesCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/ProcessDependencyReferencesCommand.cs
@@ -58,7 +58,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
58 var componentId = wixDependencyProviderRow.ComponentRef; 58 var componentId = wixDependencyProviderRow.ComponentRef;
59 59
60 var id = Common.GenerateIdentifier("reg", providesId, requiresId, "(Default)"); 60 var id = Common.GenerateIdentifier("reg", providesId, requiresId, "(Default)");
61 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Private, id)) 61 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Section, id))
62 { 62 {
63 ComponentRef = componentId, 63 ComponentRef = componentId,
64 Root = RegistryRootType.MachineUser, 64 Root = RegistryRootType.MachineUser,
@@ -69,7 +69,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
69 if (!String.IsNullOrEmpty(wixDependencyRow.MinVersion)) 69 if (!String.IsNullOrEmpty(wixDependencyRow.MinVersion))
70 { 70 {
71 id = Common.GenerateIdentifier("reg", providesId, requiresId, "MinVersion"); 71 id = Common.GenerateIdentifier("reg", providesId, requiresId, "MinVersion");
72 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Private, id)) 72 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Section, id))
73 { 73 {
74 ComponentRef = componentId, 74 ComponentRef = componentId,
75 Root = RegistryRootType.MachineUser, 75 Root = RegistryRootType.MachineUser,
@@ -83,7 +83,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
83 if (!String.IsNullOrEmpty(wixDependencyRow.MaxVersion)) 83 if (!String.IsNullOrEmpty(wixDependencyRow.MaxVersion))
84 { 84 {
85 id = Common.GenerateIdentifier("reg", providesId, requiresId, "MaxVersion"); 85 id = Common.GenerateIdentifier("reg", providesId, requiresId, "MaxVersion");
86 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Private, id)) 86 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Section, id))
87 { 87 {
88 ComponentRef = componentId, 88 ComponentRef = componentId,
89 Root = RegistryRootType.MachineUser, 89 Root = RegistryRootType.MachineUser,
@@ -96,7 +96,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
96 if (wixDependencyRow.Attributes != WixDependencySymbolAttributes.None) 96 if (wixDependencyRow.Attributes != WixDependencySymbolAttributes.None)
97 { 97 {
98 id = Common.GenerateIdentifier("reg", providesId, requiresId, "Attributes"); 98 id = Common.GenerateIdentifier("reg", providesId, requiresId, "Attributes");
99 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Private, id)) 99 this.Section.AddSymbol(new RegistrySymbol(wixDependencyRefRow.SourceLineNumbers, new Identifier(AccessModifier.Section, id))
100 { 100 {
101 ComponentRef = componentId, 101 ComponentRef = componentId,
102 Root = RegistryRootType.MachineUser, 102 Root = RegistryRootType.MachineUser,
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/UpdateFileFacadesCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/UpdateFileFacadesCommand.cs
index d5bdc797..f8819a0e 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/UpdateFileFacadesCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/UpdateFileFacadesCommand.cs
@@ -335,7 +335,7 @@ namespace WixToolset.Core.WindowsInstaller.Bind
335 var lookup = String.Concat(facade.ComponentRef, "/", name); 335 var lookup = String.Concat(facade.ComponentRef, "/", name);
336 if (!assemblyNameSymbols.TryGetValue(lookup, out var assemblyNameSymbol)) 336 if (!assemblyNameSymbols.TryGetValue(lookup, out var assemblyNameSymbol))
337 { 337 {
338 assemblyNameSymbol = this.Section.AddSymbol(new MsiAssemblyNameSymbol(facade.SourceLineNumber, new Identifier(AccessModifier.Private, facade.ComponentRef, name)) 338 assemblyNameSymbol = this.Section.AddSymbol(new MsiAssemblyNameSymbol(facade.SourceLineNumber, new Identifier(AccessModifier.Section, facade.ComponentRef, name))
339 { 339 {
340 ComponentRef = facade.ComponentRef, 340 ComponentRef = facade.ComponentRef,
341 Name = name, 341 Name = name,
diff --git a/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs b/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
index c62e8153..2cc61666 100644
--- a/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
@@ -1999,7 +1999,7 @@ namespace WixToolset.Core.WindowsInstaller
1999 foreach (var row in table.Rows) 1999 foreach (var row in table.Rows)
2000 { 2000 {
2001 var action = row.FieldAsString(0); 2001 var action = row.FieldAsString(0);
2002 var actionSymbol = new WixActionSymbol(null, new Identifier(AccessModifier.Public, sequenceTable, action)); 2002 var actionSymbol = new WixActionSymbol(null, new Identifier(AccessModifier.Global, sequenceTable, action));
2003 2003
2004 actionSymbol.Action = action; 2004 actionSymbol.Action = action;
2005 2005
@@ -2133,7 +2133,7 @@ namespace WixToolset.Core.WindowsInstaller
2133 { 2133 {
2134 foreach (var row in table.Rows) 2134 foreach (var row in table.Rows)
2135 { 2135 {
2136 var actionRow = new WixActionSymbol(null, new Identifier(AccessModifier.Public, sequenceTable, row.FieldAsString(0))); 2136 var actionRow = new WixActionSymbol(null, new Identifier(AccessModifier.Global, sequenceTable, row.FieldAsString(0)));
2137 2137
2138 actionRow.Action = row.FieldAsString(0); 2138 actionRow.Action = row.FieldAsString(0);
2139 2139
diff --git a/src/WixToolset.Core/Bind/FileFacade.cs b/src/WixToolset.Core/Bind/FileFacade.cs
index 9705cd01..d1e5ae60 100644
--- a/src/WixToolset.Core/Bind/FileFacade.cs
+++ b/src/WixToolset.Core/Bind/FileFacade.cs
@@ -35,7 +35,7 @@ namespace WixToolset.Core.Bind
35 this.FromTransform = true; 35 this.FromTransform = true;
36 this.FileRow = row; 36 this.FileRow = row;
37 37
38 this.Identifier = new Identifier(AccessModifier.Private, row.File); 38 this.Identifier = new Identifier(AccessModifier.Section, row.File);
39 this.ComponentRef = row.Component; 39 this.ComponentRef = row.Component;
40 } 40 }
41 41
diff --git a/src/WixToolset.Core/Compiler.cs b/src/WixToolset.Core/Compiler.cs
index 7113c3b5..8aa82d47 100644
--- a/src/WixToolset.Core/Compiler.cs
+++ b/src/WixToolset.Core/Compiler.cs
@@ -554,7 +554,7 @@ namespace WixToolset.Core
554 554
555 if (!this.Core.EncounteredError) 555 if (!this.Core.EncounteredError)
556 { 556 {
557 this.Core.AddSymbol(new AppIdSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, appId)) 557 this.Core.AddSymbol(new AppIdSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, appId))
558 { 558 {
559 AppId = appId, 559 AppId = appId,
560 RemoteServerName = remoteServerName, 560 RemoteServerName = remoteServerName,
@@ -652,7 +652,7 @@ namespace WixToolset.Core
652 652
653 if (!this.Core.EncounteredError) 653 if (!this.Core.EncounteredError)
654 { 654 {
655 this.Core.AddSymbol(new MsiAssemblyNameSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, componentId, id)) 655 this.Core.AddSymbol(new MsiAssemblyNameSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, componentId, id))
656 { 656 {
657 ComponentRef = componentId, 657 ComponentRef = componentId,
658 Name = id, 658 Name = id,
@@ -1844,7 +1844,7 @@ namespace WixToolset.Core
1844 } 1844 }
1845 oneChild = true; 1845 oneChild = true;
1846 signature = this.ParseFileSearchElement(child, id.Id, false, CompilerConstants.IntegerNotSet); 1846 signature = this.ParseFileSearchElement(child, id.Id, false, CompilerConstants.IntegerNotSet);
1847 id = new Identifier(AccessModifier.Private, signature); // FileSearch signatures override parent signatures 1847 id = new Identifier(AccessModifier.Section, signature); // FileSearch signatures override parent signatures
1848 break; 1848 break;
1849 case "FileSearchRef": 1849 case "FileSearchRef":
1850 if (oneChild) 1850 if (oneChild)
@@ -1853,7 +1853,7 @@ namespace WixToolset.Core
1853 } 1853 }
1854 oneChild = true; 1854 oneChild = true;
1855 var newId = this.ParseSimpleRefElement(child, SymbolDefinitions.Signature); // FileSearch signatures override parent signatures 1855 var newId = this.ParseSimpleRefElement(child, SymbolDefinitions.Signature); // FileSearch signatures override parent signatures
1856 id = new Identifier(AccessModifier.Private, newId); 1856 id = new Identifier(AccessModifier.Section, newId);
1857 signature = null; 1857 signature = null;
1858 break; 1858 break;
1859 default: 1859 default:
@@ -2087,7 +2087,7 @@ namespace WixToolset.Core
2087 2087
2088 if (!this.Core.EncounteredError) 2088 if (!this.Core.EncounteredError)
2089 { 2089 {
2090 this.Core.AddSymbol(new CCPSearchSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, signature))); 2090 this.Core.AddSymbol(new CCPSearchSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, signature)));
2091 } 2091 }
2092 } 2092 }
2093 2093
@@ -2272,7 +2272,7 @@ namespace WixToolset.Core
2272 { 2272 {
2273 // Placeholder id for defaulting Component/@Id to keypath id. 2273 // Placeholder id for defaulting Component/@Id to keypath id.
2274 componentIdPlaceholder = String.Concat(Compiler.ComponentIdPlaceholderStart, this.componentIdPlaceholders.Count, Compiler.ComponentIdPlaceholderEnd); 2274 componentIdPlaceholder = String.Concat(Compiler.ComponentIdPlaceholderStart, this.componentIdPlaceholders.Count, Compiler.ComponentIdPlaceholderEnd);
2275 id = new Identifier(AccessModifier.Private, componentIdPlaceholder); 2275 id = new Identifier(AccessModifier.Section, componentIdPlaceholder);
2276 } 2276 }
2277 2277
2278 if (null == directoryId) 2278 if (null == directoryId)
@@ -2506,7 +2506,7 @@ namespace WixToolset.Core
2506 { 2506 {
2507 this.componentIdPlaceholders.Add(componentIdPlaceholder, keyPath); 2507 this.componentIdPlaceholders.Add(componentIdPlaceholder, keyPath);
2508 2508
2509 id = new Identifier(AccessModifier.Private, keyPath); 2509 id = new Identifier(AccessModifier.Section, keyPath);
2510 } 2510 }
2511 else 2511 else
2512 { 2512 {
@@ -2545,7 +2545,7 @@ namespace WixToolset.Core
2545 2545
2546 if (0 < symbols.Count) 2546 if (0 < symbols.Count)
2547 { 2547 {
2548 this.Core.AddSymbol(new WixDeltaPatchSymbolPathsSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, SymbolPathType.Component, id.Id)) 2548 this.Core.AddSymbol(new WixDeltaPatchSymbolPathsSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, SymbolPathType.Component, id.Id))
2549 { 2549 {
2550 SymbolType = SymbolPathType.Component, 2550 SymbolType = SymbolPathType.Component,
2551 SymbolId = id.Id, 2551 SymbolId = id.Id,
@@ -2851,7 +2851,7 @@ namespace WixToolset.Core
2851 } 2851 }
2852 oneChild = true; 2852 oneChild = true;
2853 signature = this.ParseFileSearchElement(child, id.Id, false, CompilerConstants.IntegerNotSet); 2853 signature = this.ParseFileSearchElement(child, id.Id, false, CompilerConstants.IntegerNotSet);
2854 id = new Identifier(AccessModifier.Private, signature); // FileSearch signatures override parent signatures 2854 id = new Identifier(AccessModifier.Section, signature); // FileSearch signatures override parent signatures
2855 break; 2855 break;
2856 case "FileSearchRef": 2856 case "FileSearchRef":
2857 if (oneChild) 2857 if (oneChild)
@@ -2860,7 +2860,7 @@ namespace WixToolset.Core
2860 } 2860 }
2861 oneChild = true; 2861 oneChild = true;
2862 var newId = this.ParseSimpleRefElement(child, SymbolDefinitions.Signature); // FileSearch signatures override parent signatures 2862 var newId = this.ParseSimpleRefElement(child, SymbolDefinitions.Signature); // FileSearch signatures override parent signatures
2863 id = new Identifier(AccessModifier.Private, newId); 2863 id = new Identifier(AccessModifier.Section, newId);
2864 signature = null; 2864 signature = null;
2865 break; 2865 break;
2866 default: 2866 default:
@@ -3734,7 +3734,7 @@ namespace WixToolset.Core
3734 { 3734 {
3735 var columnNames = String.Join(new string(WixCustomTableSymbol.ColumnNamesSeparator, 1), columns.Select(c => c.Name)); 3735 var columnNames = String.Join(new string(WixCustomTableSymbol.ColumnNamesSeparator, 1), columns.Select(c => c.Name));
3736 3736
3737 this.Core.AddSymbol(new WixCustomTableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, tableId)) 3737 this.Core.AddSymbol(new WixCustomTableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, tableId))
3738 { 3738 {
3739 ColumnNames = columnNames, 3739 ColumnNames = columnNames,
3740 Unreal = unreal, 3740 Unreal = unreal,
@@ -4067,7 +4067,7 @@ namespace WixToolset.Core
4067 attributes |= nullable ? WixCustomTableColumnSymbolAttributes.Nullable : WixCustomTableColumnSymbolAttributes.None; 4067 attributes |= nullable ? WixCustomTableColumnSymbolAttributes.Nullable : WixCustomTableColumnSymbolAttributes.None;
4068 attributes |= columnUnreal ? WixCustomTableColumnSymbolAttributes.Unreal : WixCustomTableColumnSymbolAttributes.None; 4068 attributes |= columnUnreal ? WixCustomTableColumnSymbolAttributes.Unreal : WixCustomTableColumnSymbolAttributes.None;
4069 4069
4070 var column = this.Core.AddSymbol(new WixCustomTableColumnSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Private, tableId, columnName)) 4070 var column = this.Core.AddSymbol(new WixCustomTableColumnSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Section, tableId, columnName))
4071 { 4071 {
4072 TableRef = tableId, 4072 TableRef = tableId,
4073 Name = columnName, 4073 Name = columnName,
@@ -4134,7 +4134,7 @@ namespace WixToolset.Core
4134 4134
4135 if (!this.Core.EncounteredError) 4135 if (!this.Core.EncounteredError)
4136 { 4136 {
4137 this.Core.AddSymbol(new WixCustomTableCellSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Private, tableId, rowId, columnName)) 4137 this.Core.AddSymbol(new WixCustomTableCellSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Section, tableId, rowId, columnName))
4138 { 4138 {
4139 RowId = rowId, 4139 RowId = rowId,
4140 ColumnRef = columnName, 4140 ColumnRef = columnName,
@@ -4584,7 +4584,7 @@ namespace WixToolset.Core
4584 // and the row created here is for the file search. 4584 // and the row created here is for the file search.
4585 if (assignToProperty) 4585 if (assignToProperty)
4586 { 4586 {
4587 access = AccessModifier.Private; 4587 access = AccessModifier.Section;
4588 rowId = signature; 4588 rowId = signature;
4589 4589
4590 // The property should be set to the directory search Id. 4590 // The property should be set to the directory search Id.
@@ -5377,7 +5377,7 @@ namespace WixToolset.Core
5377 5377
5378 if (!this.Core.EncounteredError) 5378 if (!this.Core.EncounteredError)
5379 { 5379 {
5380 this.Core.AddSymbol(new ErrorSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, id)) 5380 this.Core.AddSymbol(new ErrorSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, id))
5381 { 5381 {
5382 Message = message 5382 Message = message
5383 }); 5383 });
@@ -5466,7 +5466,7 @@ namespace WixToolset.Core
5466 { 5466 {
5467 if (!this.Core.EncounteredError) 5467 if (!this.Core.EncounteredError)
5468 { 5468 {
5469 this.Core.AddSymbol(new ExtensionSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, extension, componentId)) 5469 this.Core.AddSymbol(new ExtensionSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, extension, componentId))
5470 { 5470 {
5471 Extension = extension, 5471 Extension = extension,
5472 ComponentRef = componentId, 5472 ComponentRef = componentId,
@@ -6044,7 +6044,7 @@ namespace WixToolset.Core
6044 } 6044 }
6045 else // reuse parent signature in the Signature table 6045 else // reuse parent signature in the Signature table
6046 { 6046 {
6047 id = new Identifier(AccessModifier.Private, parentSignature); 6047 id = new Identifier(AccessModifier.Section, parentSignature);
6048 } 6048 }
6049 } 6049 }
6050 6050
@@ -6108,7 +6108,7 @@ namespace WixToolset.Core
6108 { 6108 {
6109 // Creates the DrLocator row for the directory search while 6109 // Creates the DrLocator row for the directory search while
6110 // the parent DirectorySearch creates the file locator row. 6110 // the parent DirectorySearch creates the file locator row.
6111 this.Core.AddSymbol(new DrLocatorSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, parentSignature, id.Id, String.Empty)) 6111 this.Core.AddSymbol(new DrLocatorSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, parentSignature, id.Id, String.Empty))
6112 { 6112 {
6113 SignatureRef = parentSignature, 6113 SignatureRef = parentSignature,
6114 Parent = id.Id 6114 Parent = id.Id
@@ -6116,7 +6116,7 @@ namespace WixToolset.Core
6116 } 6116 }
6117 else 6117 else
6118 { 6118 {
6119 this.Core.AddSymbol(new DrLocatorSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, id.Id, parentSignature, String.Empty)) 6119 this.Core.AddSymbol(new DrLocatorSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, id.Id, parentSignature, String.Empty))
6120 { 6120 {
6121 SignatureRef = id.Id, 6121 SignatureRef = id.Id,
6122 Parent = parentSignature 6122 Parent = parentSignature
@@ -6663,7 +6663,7 @@ namespace WixToolset.Core
6663 } 6663 }
6664 oneChild = true; 6664 oneChild = true;
6665 signature = this.ParseFileSearchElement(child, id.Id, false, CompilerConstants.IntegerNotSet); 6665 signature = this.ParseFileSearchElement(child, id.Id, false, CompilerConstants.IntegerNotSet);
6666 id = new Identifier(AccessModifier.Private, signature); // FileSearch signatures override parent signatures 6666 id = new Identifier(AccessModifier.Section, signature); // FileSearch signatures override parent signatures
6667 break; 6667 break;
6668 case "FileSearchRef": 6668 case "FileSearchRef":
6669 if (oneChild) 6669 if (oneChild)
@@ -6672,7 +6672,7 @@ namespace WixToolset.Core
6672 } 6672 }
6673 oneChild = true; 6673 oneChild = true;
6674 var newId = this.ParseSimpleRefElement(child, SymbolDefinitions.Signature); // FileSearch signatures override parent signatures 6674 var newId = this.ParseSimpleRefElement(child, SymbolDefinitions.Signature); // FileSearch signatures override parent signatures
6675 id = new Identifier(AccessModifier.Private, newId); 6675 id = new Identifier(AccessModifier.Section, newId);
6676 signature = null; 6676 signature = null;
6677 break; 6677 break;
6678 default: 6678 default:
@@ -6945,7 +6945,7 @@ namespace WixToolset.Core
6945 6945
6946 if (!this.Core.EncounteredError) 6946 if (!this.Core.EncounteredError)
6947 { 6947 {
6948 this.Core.AddSymbol(new MsiDigitalSignatureSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, "Media", diskId)) 6948 this.Core.AddSymbol(new MsiDigitalSignatureSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, "Media", diskId))
6949 { 6949 {
6950 Table = "Media", 6950 Table = "Media",
6951 SignObject = diskId, 6951 SignObject = diskId,
@@ -7141,7 +7141,7 @@ namespace WixToolset.Core
7141 break; 7141 break;
7142 } 7142 }
7143 7143
7144 this.Core.ScheduleActionSymbol(sourceLineNumbers, AccessModifier.Public, SequenceTable.InstallExecuteSequence, "RemoveExistingProducts", afterAction: after); 7144 this.Core.ScheduleActionSymbol(sourceLineNumbers, AccessModifier.Global, SequenceTable.InstallExecuteSequence, "RemoveExistingProducts", afterAction: after);
7145 } 7145 }
7146 } 7146 }
7147 7147
@@ -7310,7 +7310,7 @@ namespace WixToolset.Core
7310 // add the row to the section 7310 // add the row to the section
7311 if (!this.Core.EncounteredError) 7311 if (!this.Core.EncounteredError)
7312 { 7312 {
7313 this.Core.AddSymbol(new MediaSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, id)) 7313 this.Core.AddSymbol(new MediaSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, id))
7314 { 7314 {
7315 DiskId = id, 7315 DiskId = id,
7316 DiskPrompt = diskPrompt, 7316 DiskPrompt = diskPrompt,
@@ -7323,7 +7323,7 @@ namespace WixToolset.Core
7323 7323
7324 if (null != symbols) 7324 if (null != symbols)
7325 { 7325 {
7326 this.Core.AddSymbol(new WixDeltaPatchSymbolPathsSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, SymbolPathType.Media, id)) 7326 this.Core.AddSymbol(new WixDeltaPatchSymbolPathsSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, SymbolPathType.Media, id))
7327 { 7327 {
7328 SymbolType = SymbolPathType.Media, 7328 SymbolType = SymbolPathType.Media,
7329 SymbolId = id.ToString(CultureInfo.InvariantCulture), 7329 SymbolId = id.ToString(CultureInfo.InvariantCulture),
@@ -7419,7 +7419,7 @@ namespace WixToolset.Core
7419 7419
7420 if (!this.Core.EncounteredError) 7420 if (!this.Core.EncounteredError)
7421 { 7421 {
7422 this.Core.AddSymbol(new MediaSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, 1)) 7422 this.Core.AddSymbol(new MediaSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, 1))
7423 { 7423 {
7424 DiskId = 1 7424 DiskId = 1
7425 }); 7425 });
@@ -7794,7 +7794,7 @@ namespace WixToolset.Core
7794 7794
7795 if (!this.Core.EncounteredError) 7795 if (!this.Core.EncounteredError)
7796 { 7796 {
7797 this.Core.AddSymbol(new MIMESymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, contentType)) 7797 this.Core.AddSymbol(new MIMESymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, contentType))
7798 { 7798 {
7799 ContentType = contentType, 7799 ContentType = contentType,
7800 ExtensionRef = extension, 7800 ExtensionRef = extension,
@@ -7873,7 +7873,7 @@ namespace WixToolset.Core
7873 if (patch) 7873 if (patch)
7874 { 7874 {
7875 // /Patch/PatchProperty goes directly into MsiPatchMetadata table 7875 // /Patch/PatchProperty goes directly into MsiPatchMetadata table
7876 this.Core.AddSymbol(new MsiPatchMetadataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, company, name)) 7876 this.Core.AddSymbol(new MsiPatchMetadataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, company, name))
7877 { 7877 {
7878 Company = company, 7878 Company = company,
7879 Property = name, 7879 Property = name,
@@ -7900,7 +7900,7 @@ namespace WixToolset.Core
7900 { 7900 {
7901 if (!this.Core.EncounteredError) 7901 if (!this.Core.EncounteredError)
7902 { 7902 {
7903 this.Core.AddSymbol(new PropertySymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, name)) 7903 this.Core.AddSymbol(new PropertySymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, name))
7904 { 7904 {
7905 Value = value 7905 Value = value
7906 }); 7906 });
diff --git a/src/WixToolset.Core/Compiler_Bundle.cs b/src/WixToolset.Core/Compiler_Bundle.cs
index b8c7b7b1..c790d721 100644
--- a/src/WixToolset.Core/Compiler_Bundle.cs
+++ b/src/WixToolset.Core/Compiler_Bundle.cs
@@ -19,9 +19,9 @@ namespace WixToolset.Core
19 /// </summary> 19 /// </summary>
20 internal partial class Compiler : ICompiler 20 internal partial class Compiler : ICompiler
21 { 21 {
22 private static readonly Identifier BurnUXContainerId = new Identifier(AccessModifier.Private, BurnConstants.BurnUXContainerName); 22 private static readonly Identifier BurnUXContainerId = new Identifier(AccessModifier.Section, BurnConstants.BurnUXContainerName);
23 private static readonly Identifier BurnDefaultAttachedContainerId = new Identifier(AccessModifier.Private, BurnConstants.BurnDefaultAttachedContainerName); 23 private static readonly Identifier BurnDefaultAttachedContainerId = new Identifier(AccessModifier.Section, BurnConstants.BurnDefaultAttachedContainerName);
24 private static readonly Identifier BundleLayoutOnlyPayloads = new Identifier(AccessModifier.Private, BurnConstants.BundleLayoutOnlyPayloadsName); 24 private static readonly Identifier BundleLayoutOnlyPayloads = new Identifier(AccessModifier.Section, BurnConstants.BundleLayoutOnlyPayloadsName);
25 25
26 /// <summary> 26 /// <summary>
27 /// Parses an ApprovedExeForElevation element. 27 /// Parses an ApprovedExeForElevation element.
@@ -427,25 +427,25 @@ namespace WixToolset.Core
427 }); 427 });
428 428
429 // Ensure that the bundle stores the well-known persisted values. 429 // Ensure that the bundle stores the well-known persisted values.
430 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, BurnConstants.BURN_BUNDLE_NAME)) 430 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, BurnConstants.BURN_BUNDLE_NAME))
431 { 431 {
432 Hidden = false, 432 Hidden = false,
433 Persisted = true, 433 Persisted = true,
434 }); 434 });
435 435
436 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, BurnConstants.BURN_BUNDLE_ORIGINAL_SOURCE)) 436 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, BurnConstants.BURN_BUNDLE_ORIGINAL_SOURCE))
437 { 437 {
438 Hidden = false, 438 Hidden = false,
439 Persisted = true, 439 Persisted = true,
440 }); 440 });
441 441
442 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, BurnConstants.BURN_BUNDLE_ORIGINAL_SOURCE_FOLDER)) 442 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, BurnConstants.BURN_BUNDLE_ORIGINAL_SOURCE_FOLDER))
443 { 443 {
444 Hidden = false, 444 Hidden = false,
445 Persisted = true, 445 Persisted = true,
446 }); 446 });
447 447
448 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, BurnConstants.BURN_BUNDLE_LAST_USED_SOURCE)) 448 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, BurnConstants.BURN_BUNDLE_LAST_USED_SOURCE))
449 { 449 {
450 Hidden = false, 450 Hidden = false,
451 Persisted = true, 451 Persisted = true,
@@ -946,7 +946,7 @@ namespace WixToolset.Core
946 { 946 {
947 var attributeNames = String.Join(new string(WixBundleCustomDataSymbol.AttributeNamesSeparator, 1), attributeDefinitions.Select(c => c.Name)); 947 var attributeNames = String.Join(new string(WixBundleCustomDataSymbol.AttributeNamesSeparator, 1), attributeDefinitions.Select(c => c.Name));
948 948
949 this.Core.AddSymbol(new WixBundleCustomDataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, customDataId)) 949 this.Core.AddSymbol(new WixBundleCustomDataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, customDataId))
950 { 950 {
951 AttributeNames = attributeNames, 951 AttributeNames = attributeNames,
952 Type = customDataType.Value, 952 Type = customDataType.Value,
@@ -1052,7 +1052,7 @@ namespace WixToolset.Core
1052 return null; 1052 return null;
1053 } 1053 }
1054 1054
1055 var customDataAttribute = this.Core.AddSymbol(new WixBundleCustomDataAttributeSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, customDataId, attributeName)) 1055 var customDataAttribute = this.Core.AddSymbol(new WixBundleCustomDataAttributeSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, customDataId, attributeName))
1056 { 1056 {
1057 CustomDataRef = customDataId, 1057 CustomDataRef = customDataId,
1058 Name = attributeName, 1058 Name = attributeName,
@@ -1106,7 +1106,7 @@ namespace WixToolset.Core
1106 1106
1107 if (!this.Core.EncounteredError) 1107 if (!this.Core.EncounteredError)
1108 { 1108 {
1109 this.Core.AddSymbol(new WixBundleCustomDataCellSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Private, customDataId, elementId, attributeName)) 1109 this.Core.AddSymbol(new WixBundleCustomDataCellSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Section, customDataId, elementId, attributeName))
1110 { 1110 {
1111 ElementId = elementId, 1111 ElementId = elementId,
1112 AttributeRef = attributeName, 1112 AttributeRef = attributeName,
@@ -1822,7 +1822,7 @@ namespace WixToolset.Core
1822 } 1822 }
1823 1823
1824 // Ensure there is always a rollback boundary at the beginning of the chain. 1824 // Ensure there is always a rollback boundary at the beginning of the chain.
1825 this.CreateRollbackBoundary(sourceLineNumbers, new Identifier(AccessModifier.Public, "WixDefaultBoundary"), YesNoType.Yes, YesNoType.No, ComplexReferenceParentType.PackageGroup, "WixChain", ComplexReferenceChildType.Unknown, null); 1825 this.CreateRollbackBoundary(sourceLineNumbers, new Identifier(AccessModifier.Global, "WixDefaultBoundary"), YesNoType.Yes, YesNoType.No, ComplexReferenceParentType.PackageGroup, "WixChain", ComplexReferenceChildType.Unknown, null);
1826 1826
1827 var previousId = "WixDefaultBoundary"; 1827 var previousId = "WixDefaultBoundary";
1828 var previousType = ComplexReferenceChildType.Package; 1828 var previousType = ComplexReferenceChildType.Package;
@@ -2856,7 +2856,7 @@ namespace WixToolset.Core
2856 2856
2857 if (!this.Core.EncounteredError) 2857 if (!this.Core.EncounteredError)
2858 { 2858 {
2859 var symbol = this.Core.AddSymbol(new WixBundleMsiPropertySymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, packageId, name)) 2859 var symbol = this.Core.AddSymbol(new WixBundleMsiPropertySymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, packageId, name))
2860 { 2860 {
2861 PackageRef = packageId, 2861 PackageRef = packageId,
2862 Name = name, 2862 Name = name,
@@ -2910,7 +2910,7 @@ namespace WixToolset.Core
2910 2910
2911 if (!this.Core.EncounteredError) 2911 if (!this.Core.EncounteredError)
2912 { 2912 {
2913 this.Core.AddSymbol(new WixBundleSlipstreamMspSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, packageId, id)) 2913 this.Core.AddSymbol(new WixBundleSlipstreamMspSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, packageId, id))
2914 { 2914 {
2915 TargetPackageRef = packageId, 2915 TargetPackageRef = packageId,
2916 MspPackageRef = id 2916 MspPackageRef = id
@@ -3179,7 +3179,7 @@ namespace WixToolset.Core
3179 3179
3180 if (!this.Core.EncounteredError) 3180 if (!this.Core.EncounteredError)
3181 { 3181 {
3182 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, name)) 3182 this.Core.AddSymbol(new WixBundleVariableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, name))
3183 { 3183 {
3184 Value = value, 3184 Value = value,
3185 Type = type, 3185 Type = type,
diff --git a/src/WixToolset.Core/Compiler_Module.cs b/src/WixToolset.Core/Compiler_Module.cs
index 6953467f..9c81ba5c 100644
--- a/src/WixToolset.Core/Compiler_Module.cs
+++ b/src/WixToolset.Core/Compiler_Module.cs
@@ -259,7 +259,7 @@ namespace WixToolset.Core
259 }); 259 });
260 } 260 }
261 261
262 var symbol = this.Core.AddSymbol(new ModuleSignatureSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, this.activeName, this.activeLanguage)) 262 var symbol = this.Core.AddSymbol(new ModuleSignatureSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, this.activeName, this.activeLanguage))
263 { 263 {
264 ModuleID = this.activeName, 264 ModuleID = this.activeName,
265 Version = version 265 Version = version
@@ -662,7 +662,7 @@ namespace WixToolset.Core
662 662
663 if (!this.Core.EncounteredError) 663 if (!this.Core.EncounteredError)
664 { 664 {
665 this.Core.AddSymbol(new ModuleIgnoreTableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, id))); 665 this.Core.AddSymbol(new ModuleIgnoreTableSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, id)));
666 } 666 }
667 } 667 }
668 } 668 }
diff --git a/src/WixToolset.Core/Compiler_Package.cs b/src/WixToolset.Core/Compiler_Package.cs
index 7a842ef0..2cc77a60 100644
--- a/src/WixToolset.Core/Compiler_Package.cs
+++ b/src/WixToolset.Core/Compiler_Package.cs
@@ -173,19 +173,19 @@ namespace WixToolset.Core
173 this.compilingProduct = true; 173 this.compilingProduct = true;
174 this.Core.CreateActiveSection(productCode, SectionType.Product, codepage, this.Context.CompilationId); 174 this.Core.CreateActiveSection(productCode, SectionType.Product, codepage, this.Context.CompilationId);
175 175
176 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "Manufacturer"), manufacturer, false, false, false, true); 176 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "Manufacturer"), manufacturer, false, false, false, true);
177 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "ProductCode"), productCode, false, false, false, true); 177 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "ProductCode"), productCode, false, false, false, true);
178 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "ProductLanguage"), this.activeLanguage, false, false, false, true); 178 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "ProductLanguage"), this.activeLanguage, false, false, false, true);
179 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "ProductName"), this.activeName, false, false, false, true); 179 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "ProductName"), this.activeName, false, false, false, true);
180 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "ProductVersion"), version, false, false, false, true); 180 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "ProductVersion"), version, false, false, false, true);
181 if (null != upgradeCode) 181 if (null != upgradeCode)
182 { 182 {
183 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "UpgradeCode"), upgradeCode, false, false, false, true); 183 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "UpgradeCode"), upgradeCode, false, false, false, true);
184 } 184 }
185 185
186 if (isPerMachine) 186 if (isPerMachine)
187 { 187 {
188 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Public, "ALLUSERS"), "1", false, false, false, false); 188 this.AddProperty(sourceLineNumbers, new Identifier(AccessModifier.Global, "ALLUSERS"), "1", false, false, false, false);
189 } 189 }
190 190
191 this.ValidateAndAddCommonSummaryInformationSymbols(sourceLineNumbers, msiVersion, platform); 191 this.ValidateAndAddCommonSummaryInformationSymbols(sourceLineNumbers, msiVersion, platform);
@@ -642,7 +642,7 @@ namespace WixToolset.Core
642 642
643 if (!this.Core.EncounteredError) 643 if (!this.Core.EncounteredError)
644 { 644 {
645 var identifier = new Identifier(AccessModifier.Private, parentId, id); 645 var identifier = new Identifier(AccessModifier.Section, parentId, id);
646 switch (symbolDefinitionType) 646 switch (symbolDefinitionType)
647 { 647 {
648 case SymbolDefinitionType.ODBCAttribute: 648 case SymbolDefinitionType.ODBCAttribute:
@@ -1305,7 +1305,7 @@ namespace WixToolset.Core
1305 { 1305 {
1306 if (!this.Core.EncounteredError) 1306 if (!this.Core.EncounteredError)
1307 { 1307 {
1308 var symbol = this.Core.AddSymbol(new ProgIdSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, progId)) 1308 var symbol = this.Core.AddSymbol(new ProgIdSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, progId))
1309 { 1309 {
1310 ProgId = progId, 1310 ProgId = progId,
1311 ParentProgIdRef = parent, 1311 ParentProgIdRef = parent,
@@ -1486,7 +1486,7 @@ namespace WixToolset.Core
1486 { 1486 {
1487 if (complianceCheck && !this.Core.EncounteredError) 1487 if (complianceCheck && !this.Core.EncounteredError)
1488 { 1488 {
1489 this.Core.AddSymbol(new CCPSearchSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, sig))); 1489 this.Core.AddSymbol(new CCPSearchSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, sig)));
1490 } 1490 }
1491 1491
1492 this.AddAppSearch(sourceLineNumbers, id, sig); 1492 this.AddAppSearch(sourceLineNumbers, id, sig);
@@ -2612,7 +2612,7 @@ namespace WixToolset.Core
2612 { 2612 {
2613 if (suppress) 2613 if (suppress)
2614 { 2614 {
2615 this.Core.AddSymbol(new WixSuppressActionSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Public, sequenceTable, actionName)) 2615 this.Core.AddSymbol(new WixSuppressActionSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Global, sequenceTable, actionName))
2616 { 2616 {
2617 SequenceTable = sequenceTable, 2617 SequenceTable = sequenceTable,
2618 Action = actionName 2618 Action = actionName
@@ -2620,7 +2620,7 @@ namespace WixToolset.Core
2620 } 2620 }
2621 else 2621 else
2622 { 2622 {
2623 var symbol = this.Core.AddSymbol(new WixActionSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Public, sequenceTable, actionName)) 2623 var symbol = this.Core.AddSymbol(new WixActionSymbol(childSourceLineNumbers, new Identifier(AccessModifier.Global, sequenceTable, actionName))
2624 { 2624 {
2625 SequenceTable = sequenceTable, 2625 SequenceTable = sequenceTable,
2626 Action = actionName, 2626 Action = actionName,
@@ -3735,7 +3735,7 @@ namespace WixToolset.Core
3735 3735
3736 if (!this.Core.EncounteredError) 3736 if (!this.Core.EncounteredError)
3737 { 3737 {
3738 this.Core.AddSymbol(new CustomActionSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, actionName)) 3738 this.Core.AddSymbol(new CustomActionSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, actionName))
3739 { 3739 {
3740 ExecutionType = executionType, 3740 ExecutionType = executionType,
3741 SourceType = CustomActionSourceType.Directory, 3741 SourceType = CustomActionSourceType.Directory,
@@ -3746,7 +3746,7 @@ namespace WixToolset.Core
3746 3746
3747 foreach (var sequence in sequences) 3747 foreach (var sequence in sequences)
3748 { 3748 {
3749 this.Core.ScheduleActionSymbol(sourceLineNumbers, AccessModifier.Public, sequence, actionName, condition, afterAction: "CostInitialize"); 3749 this.Core.ScheduleActionSymbol(sourceLineNumbers, AccessModifier.Global, sequence, actionName, condition, afterAction: "CostInitialize");
3750 } 3750 }
3751 } 3751 }
3752 } 3752 }
@@ -3864,7 +3864,7 @@ namespace WixToolset.Core
3864 this.Core.Write(ErrorMessages.ActionScheduledRelativeToItself(sourceLineNumbers, node.Name.LocalName, "After", afterAction)); 3864 this.Core.Write(ErrorMessages.ActionScheduledRelativeToItself(sourceLineNumbers, node.Name.LocalName, "After", afterAction));
3865 } 3865 }
3866 3866
3867 this.Core.AddSymbol(new CustomActionSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, actionName)) 3867 this.Core.AddSymbol(new CustomActionSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, actionName))
3868 { 3868 {
3869 ExecutionType = executionType, 3869 ExecutionType = executionType,
3870 SourceType = CustomActionSourceType.Property, 3870 SourceType = CustomActionSourceType.Property,
@@ -3875,7 +3875,7 @@ namespace WixToolset.Core
3875 3875
3876 foreach (var sequence in sequences) 3876 foreach (var sequence in sequences)
3877 { 3877 {
3878 this.Core.ScheduleActionSymbol(sourceLineNumbers, AccessModifier.Public, sequence, actionName, condition, beforeAction, afterAction); 3878 this.Core.ScheduleActionSymbol(sourceLineNumbers, AccessModifier.Global, sequence, actionName, condition, beforeAction, afterAction);
3879 } 3879 }
3880 } 3880 }
3881 } 3881 }
diff --git a/src/WixToolset.Core/Compiler_Patch.cs b/src/WixToolset.Core/Compiler_Patch.cs
index 83737c43..998894d8 100644
--- a/src/WixToolset.Core/Compiler_Patch.cs
+++ b/src/WixToolset.Core/Compiler_Patch.cs
@@ -197,7 +197,7 @@ namespace WixToolset.Core
197 197
198 if (!this.Core.EncounteredError) 198 if (!this.Core.EncounteredError)
199 { 199 {
200 this.Core.AddSymbol(new WixPatchIdSymbol(sourceLineNumbers, new Identifier(AccessModifier.Public, patchId)) 200 this.Core.AddSymbol(new WixPatchIdSymbol(sourceLineNumbers, new Identifier(AccessModifier.Global, patchId))
201 { 201 {
202 ClientPatchId = clientPatchId, 202 ClientPatchId = clientPatchId,
203 OptimizePatchSizeForLargeFiles = optimizePatchSizeForLargeFiles, 203 OptimizePatchSizeForLargeFiles = optimizePatchSizeForLargeFiles,
@@ -645,7 +645,7 @@ namespace WixToolset.Core
645 645
646 private void AddMsiPatchMetadata(SourceLineNumber sourceLineNumbers, string company, string property, string value) 646 private void AddMsiPatchMetadata(SourceLineNumber sourceLineNumbers, string company, string property, string value)
647 { 647 {
648 this.Core.AddSymbol(new MsiPatchMetadataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, company, property)) 648 this.Core.AddSymbol(new MsiPatchMetadataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, company, property))
649 { 649 {
650 Company = company, 650 Company = company,
651 Property = property, 651 Property = property,
diff --git a/src/WixToolset.Core/Compiler_PatchCreation.cs b/src/WixToolset.Core/Compiler_PatchCreation.cs
index c1c593c2..7675a5c0 100644
--- a/src/WixToolset.Core/Compiler_PatchCreation.cs
+++ b/src/WixToolset.Core/Compiler_PatchCreation.cs
@@ -1254,7 +1254,7 @@ namespace WixToolset.Core
1254 1254
1255 private void AddPatchMetadata(SourceLineNumber sourceLineNumbers, string company, string property, string value) 1255 private void AddPatchMetadata(SourceLineNumber sourceLineNumbers, string company, string property, string value)
1256 { 1256 {
1257 this.Core.AddSymbol(new PatchMetadataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, company, property)) 1257 this.Core.AddSymbol(new PatchMetadataSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, company, property))
1258 { 1258 {
1259 Company = company, 1259 Company = company,
1260 Property = property, 1260 Property = property,
diff --git a/src/WixToolset.Core/Compiler_Tag.cs b/src/WixToolset.Core/Compiler_Tag.cs
index 2b3523c8..cf55c448 100644
--- a/src/WixToolset.Core/Compiler_Tag.cs
+++ b/src/WixToolset.Core/Compiler_Tag.cs
@@ -236,7 +236,7 @@ namespace WixToolset.Core
236 else 236 else
237 { 237 {
238 feature = "WixSwidTag"; 238 feature = "WixSwidTag";
239 this.Core.AddSymbol(new FeatureSymbol(sourceLineNumbers, new Identifier(AccessModifier.Private, feature)) 239 this.Core.AddSymbol(new FeatureSymbol(sourceLineNumbers, new Identifier(AccessModifier.Section, feature))
240 { 240 {
241 Title = "ISO/IEC 19770-2", 241 Title = "ISO/IEC 19770-2",
242 Level = 1, 242 Level = 1,
diff --git a/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs b/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs
index ad2427e4..7894ce8e 100644
--- a/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs
+++ b/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs
@@ -111,13 +111,13 @@ namespace WixToolset.Core.ExtensibilityServices
111 public Identifier CreateIdentifier(string prefix, params string[] args) 111 public Identifier CreateIdentifier(string prefix, params string[] args)
112 { 112 {
113 var id = Common.GenerateIdentifier(prefix, args); 113 var id = Common.GenerateIdentifier(prefix, args);
114 return new Identifier(AccessModifier.Private, id); 114 return new Identifier(AccessModifier.Section, id);
115 } 115 }
116 116
117 public Identifier CreateIdentifierFromFilename(string filename) 117 public Identifier CreateIdentifierFromFilename(string filename)
118 { 118 {
119 var id = Common.GetIdentifierFromName(filename); 119 var id = Common.GetIdentifierFromName(filename);
120 return new Identifier(AccessModifier.Private, id); 120 return new Identifier(AccessModifier.Section, id);
121 } 121 }
122 122
123 public string CreateIdentifierValueFromPlatform(string name, Platform currentPlatform, BurnPlatforms supportedPlatforms) 123 public string CreateIdentifierValueFromPlatform(string name, Platform currentPlatform, BurnPlatforms supportedPlatforms)
@@ -425,7 +425,7 @@ namespace WixToolset.Core.ExtensibilityServices
425 425
426 public Identifier GetAttributeIdentifier(SourceLineNumber sourceLineNumbers, XAttribute attribute) 426 public Identifier GetAttributeIdentifier(SourceLineNumber sourceLineNumbers, XAttribute attribute)
427 { 427 {
428 var access = AccessModifier.Public; 428 var access = AccessModifier.Global;
429 var value = Common.GetAttributeValue(this.Messaging, sourceLineNumbers, attribute, EmptyRule.CanBeEmpty); 429 var value = Common.GetAttributeValue(this.Messaging, sourceLineNumbers, attribute, EmptyRule.CanBeEmpty);
430 430
431 var separator = value.IndexOf(' '); 431 var separator = value.IndexOf(' ');
@@ -434,24 +434,26 @@ namespace WixToolset.Core.ExtensibilityServices
434 var prefix = value.Substring(0, separator); 434 var prefix = value.Substring(0, separator);
435 switch (prefix) 435 switch (prefix)
436 { 436 {
437 case "global":
437 case "public": 438 case "public":
438 case "package": 439 case "package":
439 access = AccessModifier.Public; 440 access = AccessModifier.Global;
440 break; 441 break;
441 442
442 case "internal": 443 case "internal":
443 case "library": 444 case "library":
444 access = AccessModifier.Internal; 445 access = AccessModifier.Library;
445 break; 446 break;
446 447
447 case "protected":
448 case "file": 448 case "file":
449 access = AccessModifier.Protected; 449 case "protected":
450 access = AccessModifier.File;
450 break; 451 break;
451 452
452 case "private": 453 case "private":
453 case "fragment": 454 case "fragment":
454 access = AccessModifier.Private; 455 case "section":
456 access = AccessModifier.Section;
455 break; 457 break;
456 458
457 default: 459 default:
diff --git a/src/WixToolset.Core/Link/FindEntrySectionAndLoadSymbolsCommand.cs b/src/WixToolset.Core/Link/FindEntrySectionAndLoadSymbolsCommand.cs
index a52d0d63..5d6cc831 100644
--- a/src/WixToolset.Core/Link/FindEntrySectionAndLoadSymbolsCommand.cs
+++ b/src/WixToolset.Core/Link/FindEntrySectionAndLoadSymbolsCommand.cs
@@ -92,7 +92,7 @@ namespace WixToolset.Core.Link
92 // If the duplicate symbols are both private directories, there is a chance that they 92 // If the duplicate symbols are both private directories, there is a chance that they
93 // point to identical symbols. Identical directory symbols are redundant and will not cause 93 // point to identical symbols. Identical directory symbols are redundant and will not cause
94 // conflicts. 94 // conflicts.
95 if (AccessModifier.Private == existingSymbol.Access && AccessModifier.Private == symbolWithSection.Access && 95 if (AccessModifier.Section == existingSymbol.Access && AccessModifier.Section == symbolWithSection.Access &&
96 SymbolDefinitionType.Directory == existingSymbol.Symbol.Definition.Type && existingSymbol.Symbol.IsIdentical(symbolWithSection.Symbol)) 96 SymbolDefinitionType.Directory == existingSymbol.Symbol.Definition.Type && existingSymbol.Symbol.IsIdentical(symbolWithSection.Symbol))
97 { 97 {
98 // Ensure identical symbol's symbol is marked redundant to ensure (should the symbol be 98 // Ensure identical symbol's symbol is marked redundant to ensure (should the symbol be
diff --git a/src/WixToolset.Core/Link/ResolveReferencesCommand.cs b/src/WixToolset.Core/Link/ResolveReferencesCommand.cs
index 2bdd5646..efb90bb8 100644
--- a/src/WixToolset.Core/Link/ResolveReferencesCommand.cs
+++ b/src/WixToolset.Core/Link/ResolveReferencesCommand.cs
@@ -167,13 +167,13 @@ namespace WixToolset.Core.Link
167 { 167 {
168 switch (symbolWithSection.Access) 168 switch (symbolWithSection.Access)
169 { 169 {
170 case AccessModifier.Public: 170 case AccessModifier.Global:
171 return true; 171 return true;
172 case AccessModifier.Internal: 172 case AccessModifier.Library:
173 return symbolWithSection.Section.CompilationId == referencingSection.CompilationId || (null != symbolWithSection.Section.LibraryId && symbolWithSection.Section.LibraryId == referencingSection.LibraryId); 173 return symbolWithSection.Section.CompilationId == referencingSection.CompilationId || (null != symbolWithSection.Section.LibraryId && symbolWithSection.Section.LibraryId == referencingSection.LibraryId);
174 case AccessModifier.Protected: 174 case AccessModifier.File:
175 return symbolWithSection.Section.CompilationId == referencingSection.CompilationId; 175 return symbolWithSection.Section.CompilationId == referencingSection.CompilationId;
176 case AccessModifier.Private: 176 case AccessModifier.Section:
177 return referencingSection == symbolWithSection.Section; 177 return referencingSection == symbolWithSection.Section;
178 default: 178 default:
179 throw new ArgumentOutOfRangeException(nameof(symbolWithSection.Access)); 179 throw new ArgumentOutOfRangeException(nameof(symbolWithSection.Access));