@@ -180,6 +180,7 @@ procedure Gnat1drv is
-- Set all flags required when generating C code
if Generate_C_Code then
+ CCG_Mode := True;
Modify_Tree_For_C := True;
Transform_Function_Array := True;
Unnest_Subprogram_Mode := True;
@@ -262,6 +262,9 @@ package Opt is
-- Set to True to build, bind and link all the sources of a project file
-- (switch -B)
+ CCG_Mode : Boolean := False;
+ -- Set to True when running as CCG (either via -gnatceg or via -emit-c)
+
Check_Aliasing_Of_Parameters : Boolean := False;
-- GNAT
-- Set to True to detect whether subprogram parameters and function results
@@ -409,7 +409,7 @@ package body Sem_Ch7 is
-- should occur, so we need to catch all cases where the
-- subprogram may be inlined by the client.
- if not Generate_C_Code
+ if not CCG_Mode
and then (Is_Inlined (Decl_Id)
or else Has_Pragma_Inline (Decl_Id))
then
@@ -431,7 +431,7 @@ package body Sem_Ch7 is
-- unless we generate C code since inlining is then
-- handled by the C compiler.
- if not Generate_C_Code
+ if not CCG_Mode
and then (Is_Inlined (Decl_Id)
or else Has_Pragma_Inline (Decl_Id))
then