diff --git a/cc/cc.go b/cc/cc.go
index 0ed6238..5dee32e 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -1567,11 +1567,12 @@
 	}
 
 	if ctx.ctx.Device() {
-		// When building for vendor/product, use the latest _stable_ API as "current".
-		// This is passed to clang/aidl compilers so that compiled/generated code works
-		// with the system.
-		if (ctx.inVendor() || ctx.inProduct()) && (ver == "" || ver == "current") {
-			ver = ctx.ctx.Config().PlatformSdkVersion().String()
+		config := ctx.ctx.Config()
+		if ctx.inVendor() {
+			// If building for vendor with final API, then use the latest _stable_ API as "current".
+			if config.VendorApiLevelFrozen() && (ver == "" || ver == "current") {
+				ver = config.PlatformSdkVersion().String()
+			}
 		}
 	}
 
diff --git a/cc/cc_test.go b/cc/cc_test.go
index f170d0a..e906706 100644
--- a/cc/cc_test.go
+++ b/cc/cc_test.go
@@ -3258,7 +3258,7 @@
 	testDepWithVariant("product")
 }
 
-func TestVendorOrProductVariantUsesPlatformSdkVersionAsDefault(t *testing.T) {
+func TestVendorSdkVersion(t *testing.T) {
 	t.Parallel()
 
 	bp := `
@@ -3266,29 +3266,31 @@
 			name: "libfoo",
 			srcs: ["libfoo.cc"],
 			vendor_available: true,
-			product_available: true,
 		}
 
 		cc_library {
 			name: "libbar",
 			srcs: ["libbar.cc"],
 			vendor_available: true,
-			product_available: true,
 			min_sdk_version: "29",
 		}
 	`
 
 	ctx := prepareForCcTest.RunTestWithBp(t, bp)
-	testSdkVersionFlag := func(module, variant, version string) {
-		flags := ctx.ModuleForTests(module, "android_"+variant+"_arm64_armv8-a_static").Rule("cc").Args["cFlags"]
-		android.AssertStringDoesContain(t, "target SDK version", flags, "-target aarch64-linux-android"+version)
+	testSdkVersionFlag := func(module, version string) {
+		flags := ctx.ModuleForTests(module, "android_vendor_arm64_armv8-a_static").Rule("cc").Args["cFlags"]
+		android.AssertStringDoesContain(t, "min sdk version", flags, "-target aarch64-linux-android"+version)
 	}
 
-	testSdkVersionFlag("libfoo", "vendor", "30")
-	testSdkVersionFlag("libfoo", "product", "30")
-	// target SDK version can be set explicitly with min_sdk_version
-	testSdkVersionFlag("libbar", "vendor", "29")
-	testSdkVersionFlag("libbar", "product", "29")
+	testSdkVersionFlag("libfoo", "10000")
+	testSdkVersionFlag("libbar", "29")
+
+	ctx = android.GroupFixturePreparers(
+		prepareForCcTest,
+		android.PrepareForTestWithBuildFlag("RELEASE_BOARD_API_LEVEL_FROZEN", "true"),
+	).RunTestWithBp(t, bp)
+	testSdkVersionFlag("libfoo", "30")
+	testSdkVersionFlag("libbar", "29")
 }
 
 func TestClangVerify(t *testing.T) {
