From 604a91eb579bd3249d366cb90018810e08f51717 Mon Sep 17 00:00:00 2001
From: Matteo Bruni <mbruni@codeweavers.com>
Date: Mon, 16 Jul 2012 20:39:22 +0200
Subject: [PATCH] d3dcompiler: Don't allow semantics on void functions.

---
 dlls/d3dcompiler_43/hlsl.y | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/dlls/d3dcompiler_43/hlsl.y b/dlls/d3dcompiler_43/hlsl.y
index eedf357b3d9..33db86b2fea 100644
--- a/dlls/d3dcompiler_43/hlsl.y
+++ b/dlls/d3dcompiler_43/hlsl.y
@@ -396,6 +396,11 @@ func_prototype:           var_modifiers type var_identifier '(' parameters ')' s
                                             HLSL_LEVEL_ERROR, "redefinition of '%s'\n", $3);
                                     return 1;
                                 }
+                                if ($2->base_type == HLSL_TYPE_VOID && $7)
+                                {
+                                    hlsl_report_message(hlsl_ctx.source_file, @7.first_line, @7.first_column,
+                                            HLSL_LEVEL_ERROR, "void function with a semantic");
+                                }
 
                                 $$ = new_func_decl($3, $2, $5);
                                 if (!$$)
-- 
GitLab