summaryrefslogtreecommitdiffstats
path: root/src/mesa/program
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2011-09-11 16:10:33 -0500
committerIan Romanick <[email protected]>2011-10-18 17:26:38 -0700
commitbbbb8345ab9df2d634dc2a34d257ee2cbf930292 (patch)
treecd7579458a88a83b4e9d6a77e463f9ab085c514d /src/mesa/program
parent1375d67984f0cd01efa7b256864f21dc4ff75982 (diff)
ir_to_mesa: Move some things outside the 'extern "C"' blocks
Having a few of these includes or forward declarations inside the 'extern "C"' block can cause problems later. Specifically, it prevents C++ linkage functions from being added to ir_to_mesa.h and makes G++ angry if 'struct foo' is seen both inside and outside an 'extern "C"'. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/program')
-rw-r--r--src/mesa/program/ir_to_mesa.cpp7
-rw-r--r--src/mesa/program/ir_to_mesa.h8
2 files changed, 8 insertions, 7 deletions
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp
index 5be44bc514d..8330bc501a2 100644
--- a/src/mesa/program/ir_to_mesa.cpp
+++ b/src/mesa/program/ir_to_mesa.cpp
@@ -41,12 +41,13 @@
#include "ir_optimization.h"
#include "ast.h"
-extern "C" {
#include "main/mtypes.h"
-#include "main/shaderapi.h"
#include "main/shaderobj.h"
-#include "main/uniforms.h"
#include "program/hash_table.h"
+
+extern "C" {
+#include "main/shaderapi.h"
+#include "main/uniforms.h"
#include "program/prog_instruction.h"
#include "program/prog_optimize.h"
#include "program/prog_print.h"
diff --git a/src/mesa/program/ir_to_mesa.h b/src/mesa/program/ir_to_mesa.h
index 7410e149735..5649282f03f 100644
--- a/src/mesa/program/ir_to_mesa.h
+++ b/src/mesa/program/ir_to_mesa.h
@@ -21,16 +21,16 @@
* DEALINGS IN THE SOFTWARE.
*/
-#ifdef __cplusplus
-extern "C" {
-#endif
-
#include "main/glheader.h"
struct gl_context;
struct gl_shader;
struct gl_shader_program;
+#ifdef __cplusplus
+extern "C" {
+#endif
+
void _mesa_glsl_compile_shader(struct gl_context *ctx, struct gl_shader *sh);
void _mesa_glsl_link_shader(struct gl_context *ctx, struct gl_shader_program *prog);
GLboolean _mesa_ir_compile_shader(struct gl_context *ctx, struct gl_shader *shader);