From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_05,FROM_ADDR_WS, INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!mnetor!uunet!lll-winken!lll-tis!ames!pasteur!ucbvax!CLSEPF51.BITNET!louboutin From: louboutin@CLSEPF51.BITNET (Sylvain LOUBOUTIN (+41 21) 47 27 37) Newsgroups: comp.lang.ada Subject: RE: Limitation of the DEC Ada Compiler ? Message-ID: <880418104845.2041f6b4@elde.epfl.ch> Date: 18 Apr 88 09:48:45 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet List-Id: > In an Ada system using heavilly generic packages and generic procedures > and functions, I ALWAYS end up when trying to compile the higher level > units with a crash of the DEC Ada compiler. The crash occurs in the > routine SI_INST_BODY_BODY at line 1125 of the Ada compiler (Micro-VAX 2 > running VMS 4.7 in LAVC with ADA V1.4-33) > [...] > Philippe JAMET jamet%m_dsavx1@sdr.slb.com > -- > Etudes et Fabrication DOWELL-SCHLUMBERGER > Z.I. de Molina la Chazotte B.P. 90 > 42003 Saint-Etienne CEDEX 1 > FRANCE The Vax Ada compiler seems to have few problems with genericity. Look at that short program, and its effect on the compiler... ( of course I have submitted a SPR and of course have no answer yet... ) Sylvain Louboutin Swiss Federal Institute Of Technology Department of Computer Science Software Engineering Laboratory 1015 Lausanne ------------- SWITZERLAND Phone: (+41 21) 47 27 37 Email Adress: LOUBOUTIN@CLSEPF51.BITNET PSI%022846911008::ELMA::LOUBOUTIN (X.25) ELMA::LOUBOUTIN (node 20.434 on SPAN/HEPnet/CHadNet) generic package G_DISPLAY_G is procedure REFRESH; end G_DISPLAY_G; package body G_DISPLAY_G is package INTERNAL is generic with procedure ACT_ON_LINE; procedure TRAVERSE_WINDOW_G; end INTERNAL; package body INTERNAL is procedure TRAVERSE_WINDOW_G is begin ACT_ON_LINE; end TRAVERSE_WINDOW_G; end INTERNAL; procedure REFRESH is procedure ACT_ON_LINE is begin null; end ACT_ON_LINE; procedure DO_REFRESH is new INTERNAL.TRAVERSE_WINDOW_G (ACT_ON_LINE); begin DO_REFRESH; end REFRESH; end G_DISPLAY_G; with G_DISPLAY_G; package G_DISPLAY is new G_DISPLAY_G; %SYSTEM-F-ACCVIO, access violation, reason mask=01, virtual address=2FFC0000, PC=0017653C, PSL=03C00004 %TRACE-F-TRACEBACK, symbolic stack dump follows module name routine name line rel PC abs PC DANNOT DAN_ENTRY_CALL_STMT 1029 0000017A 0017653C BACKEND BCK_DISPATCH 1338 00000049 00164509 BACKEND BCK_DISPATCH_LIST_REPLACING 1539 0000001F 0016458D DANNOT DAN_BODY 609 0000002F 001761B2 BACKEND BCK_DISPATCH 1338 00000049 00164509 DANNOT DAN_FUNC_BODY_DECL 1645 00000041 00176AC7 BACKEND BCK_DISPATCH 1338 00000049 00164509 DANNOT DANNOT_MAIN 188 0000000E 00175CDE BACKEND BCK_DRIVER 1190 0000006A 001643EF BACKEND BCK_DRIVE_SEGMENT 1059 00000096 001642F0 BACKEND BCK_FLUSH_SEGMENTS 827 0000014C 001640AC DSPLIT DSP_COMPIL_UNIT 2410 000006E6 00170B01 BACKEND BCK_DISPATCH 1338 00000049 00164509 DSPLIT DSPLIT_MAIN 183 0000000E 0016F286 BACKEND BCK_DRIVER 1190 0000006A 001643EF BACKEND BCK_MAIN 473 00000063 00163DAB ADACOMPIL ADA_COMPIL_UNIT 794 000001C8 000E239C ADACOMPIL ADA_COMPILATION 517 000000EA 000E210E ADACOMPIL ADA_COMPILER 394 00000051 000E1F81 ADAMAIN ADA_MAIN 121 00000009 001A100D CL_DECODE_ACCVI USER_SIGNAL 0000014E 001B7055 001DB9F2 001DB9F2 ADA$ELAB_UNI_RE ADA$ELAB_UNI_REAL 0000000E 000B4C16 CL_DECODE_ACCVI USER_SIGNAL 00000129 001B7030 33 package G_DISPLAY is new G_DISPLAY_G; .........1 %ADAC-F-SUBMITSPR, (1) (from G_DISPLAY_G's body at line 25, from G_DISPLAY_G's body at line 16) Internal Ada compiler error -- please submit a Software Performance Report (SPR) (system: VAX/VMS V4.7, compiler: VAX Ada V1.4-33) COMMAND QUALIFIERS ADA/NOOPTIMIZE/LIS/LIBRARY=USER3:[LOUBOUTIN.MAIN_LIB] G_DISPLAY QUALIFIERS USED /NOANALYSIS_DATA/CHECK/COPY_SOURCE/DEBUG=ALL/ERROR_LIMIT=30/LIST /NOMACHINE_CODE/NODIAGNOSTICS/LIBRARY=USER3:[LOUBOUTIN.MAIN_LIB] /NOTE_SOURCE/NOOPTIMIZE/SHOW=PORTABILITY/NOSYNTAX_ONLY /WARNINGS=(NOCOMPILATION_NOTES,STATUS=LIST, SUPPLEMENTAL=ALL,WARNINGS=ALL,WEAK_WARNINGS=ALL)