exp_disp.adb (Make_DT, [...]): Avoid generating dispatch tables of locally defined...
authorJavier Miranda <miranda@adacore.com>
Tue, 20 May 2008 12:46:19 +0000 (14:46 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 20 May 2008 12:46:19 +0000 (14:46 +0200)
commit5b7dd52da8cf43abfab1a2703c70fcb07f0a5278
tree54ffad32940d88a7d6874750a02ba8b6fca7aeac
parentd4817e3fbfe0e0268aeb96a7ce845e5e7fb3a6a6
exp_disp.adb (Make_DT, [...]): Avoid generating dispatch tables of locally defined tagged types statically.

2008-05-20  Javier Miranda  <miranda@adacore.com>
    Ed Schonberg  <schonberg@adacore.com>

* exp_disp.adb (Make_DT, Make_Secondary_DT, Make_Tags): Avoid
generating dispatch tables of locally defined tagged types statically.
Remove implicit if-statement that is no longer required.
(Expand_Dispatching_Call): If this is a call to an instance of the
generic dispatching constructor, the type of the first argument may be
a subtype of Tag, so always use the base type to recognize this case.

From-SVN: r135625
gcc/ada/exp_disp.adb