Skip to content

Commit de7fdd2

Browse files
authored
Use the correct bitwise operator for combining flags (#10325)
1 parent d77dcc7 commit de7fdd2

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed

src/Bicep.Core.IntegrationTests/ScenarioTests.cs

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4545,5 +4545,36 @@ param workspaceName string
45454545

45464546
result.Should().NotHaveAnyDiagnostics();
45474547
}
4548+
4549+
// https://github.com/Azure/bicep/issues/10321
4550+
[TestMethod]
4551+
public void Test_Issue10321()
4552+
{
4553+
var result = CompilationHelper.Compile(
4554+
("main.bicep", @"
4555+
module mod 'mod.json' = {
4556+
name: 'mod'
4557+
params: {
4558+
secret: kv.getSecret('secret')
4559+
}
4560+
}
4561+
4562+
resource kv 'Microsoft.KeyVault/vaults@2019-09-01' existing = {
4563+
name: 'kv'
4564+
}
4565+
"),
4566+
("mod.json", @"{
4567+
""$schema"": ""https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#"",
4568+
""contentVersion"": ""1.0.0.0"",
4569+
""parameters"": {
4570+
""secret"": {
4571+
""type"": ""secureString""
45484572
}
4549-
}
4573+
},
4574+
""resources"": []
4575+
}"));
4576+
4577+
result.ExcludingLinterDiagnostics().Should().NotHaveAnyDiagnostics();
4578+
}
4579+
}
4580+
}

src/Bicep.Core/Semantics/ArmTemplateSemanticModel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ TemplateParameterType.String when TryCreateUnboundResourceTypeParameter(resolved
162162
TemplateParameterType.Array => GetArrayType(resolved),
163163
TemplateParameterType.Object => GetObjectType(SourceFile.Template!, resolved),
164164
TemplateParameterType.SecureString => GetStringType(resolved,
165-
TypeSymbolValidationFlags.IsSecure & (allowLooseAssignment ? TypeSymbolValidationFlags.AllowLooseAssignment : TypeSymbolValidationFlags.Default)),
165+
TypeSymbolValidationFlags.IsSecure | (allowLooseAssignment ? TypeSymbolValidationFlags.AllowLooseAssignment : TypeSymbolValidationFlags.Default)),
166166
TemplateParameterType.SecureObject => GetObjectType(SourceFile.Template!, resolved, TypeSymbolValidationFlags.IsSecure),
167167
_ => ErrorType.Empty(),
168168
};

0 commit comments

Comments
 (0)