diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-10 10:21:44 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-10 10:21:44 +0000 |
commit | fa0b5df1de4836ff42c9a8ddfd340fad2aa8b494 (patch) | |
tree | bf94e39042c5b3d4750165692d29ac1028365b68 /gcc/ada/sem_prag.adb | |
parent | 1971b754e53b28f8dfbe62cce9baa29f96e0b918 (diff) | |
download | gcc-fa0b5df1de4836ff42c9a8ddfd340fad2aa8b494.tar.gz |
2009-04-10 Ed Schonberg <schonberg@adacore.com>
* sem_prag.adb (Analyze_Pragma, case Task_Name): Do not expand argument
of pragma. It will be recopied and analyzed when used in call to
Create_Task.
* sem_res.adb (Resolve_Call): Clarify use of secondary stack within
initialization operations and recognize use of it in procedure calls
within init_procs.
* exp_ch9.adb (Make_Task_Create_Call): Copy full tree of Task_Name
argument, because it may have side-effects.
* exp_ch2.adb: Remove obsolete comments on default functions
2009-04-10 Jose Ruiz <ruiz@adacore.com>
* adaint.c (RTX section): Do for RTX the same thing as we do for
Windows (include ctype.h and define a fallback ISALPHA if IN_RTS).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145882 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_prag.adb')
-rw-r--r-- | gcc/ada/sem_prag.adb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index af25b1427cd..544c6090922 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -11168,7 +11168,11 @@ package body Sem_Prag is Check_Arg_Count (1); Arg := Expression (Arg1); - Analyze_And_Resolve (Arg, Standard_String); + + -- The expression is used in the call to create_task, and must + -- be expanded there, not in the context of the current spec. + + Preanalyze_And_Resolve (New_Copy_Tree (Arg), Standard_String); if Nkind (P) /= N_Task_Definition then Pragma_Misplaced; |