From: Ed Schonberg Date: Wed, 6 Jun 2007 10:47:17 +0000 (+0200) Subject: sem_smem.adb (Check_Shared_Var): Check explicitly for as task object, to prevent... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ff6821917192a0e459c2b050723a2a66d4b2cb8f;p=gcc.git sem_smem.adb (Check_Shared_Var): Check explicitly for as task object, to prevent subsequent expansion. 2007-04-20 Ed Schonberg * sem_smem.adb (Check_Shared_Var): Check explicitly for as task object, to prevent subsequent expansion. From-SVN: r125461 --- diff --git a/gcc/ada/sem_smem.adb b/gcc/ada/sem_smem.adb index 2682c88c7d4..6584867f843 100644 --- a/gcc/ada/sem_smem.adb +++ b/gcc/ada/sem_smem.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1998-2000, Free Software Foundation, Inc. -- +-- Copyright (C) 1998-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -77,6 +77,15 @@ package body Sem_Smem is "not supported in Shared_Passive partitions", Id); + -- Objects with default-initialized types will be rejected when + -- the initialization code is generated. However we must flag tasks + -- earlier on, to prevent expansion of stream attributes that is + -- bound to fail. + + elsif Has_Task (T) then + Error_Msg_N + ("Shared_Passive partitions cannot contain tasks", Id); + -- Currently we do not support unconstrained record types, since we -- use 'Write to write out values. This could probably be special -- cased and handled in the future if necessary.