Commit 6fa8f71c by Arnaud Charlet

[multiple changes]

2015-10-20  Bob Duff  <duff@adacore.com>

	* a-coinve.adb, a-contai.adb: Update comments.
	* pprint.ads: Minor reformatting.

2015-10-20  Tristan Gingold  <gingold@adacore.com>

	* env.c, init.c: Handle arm64-darwin like arm-darwin.
	* tracebak.c: Handle arm64-darwin.

2015-10-20  Bob Duff  <duff@adacore.com>

	* s-trasym.adb (Symbolic_Traceback): When giving the traceback
	as hexadecimal code addresses, separate by blanks instead of LF.

From-SVN: r229039
parent 36f2e3d3
2015-10-20 Bob Duff <duff@adacore.com>
* a-coinve.adb, a-contai.adb: Update comments.
* pprint.ads: Minor reformatting.
2015-10-20 Tristan Gingold <gingold@adacore.com>
* env.c, init.c: Handle arm64-darwin like arm-darwin.
* tracebak.c: Handle arm64-darwin.
2015-10-20 Bob Duff <duff@adacore.com>
* s-trasym.adb (Symbolic_Traceback): When giving the traceback
as hexadecimal code addresses, separate by blanks instead of LF.
2015-10-20 Ed Schonberg <schonberg@adacore.com> 2015-10-20 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Body_Helper): Generate freeze * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Generate freeze
......
...@@ -750,7 +750,9 @@ package body Ada.Containers.Indefinite_Vectors is ...@@ -750,7 +750,9 @@ package body Ada.Containers.Indefinite_Vectors is
end Finalize; end Finalize;
procedure Finalize (Object : in out Iterator) is procedure Finalize (Object : in out Iterator) is
pragma Warnings (Off);
pragma Assert (T_Check); -- not called if check suppressed pragma Assert (T_Check); -- not called if check suppressed
pragma Warnings (On);
begin begin
Unbusy (Object.Container.TC); Unbusy (Object.Container.TC);
end Finalize; end Finalize;
......
...@@ -37,6 +37,7 @@ package body Ada.Containers is ...@@ -37,6 +37,7 @@ package body Ada.Containers is
procedure Adjust (Control : in out Reference_Control_Type) is procedure Adjust (Control : in out Reference_Control_Type) is
pragma Warnings (Off); pragma Warnings (Off);
-- GNAT warns here if checks are turned off, but assertions on
pragma Assert (T_Check); -- not called if check suppressed pragma Assert (T_Check); -- not called if check suppressed
pragma Warnings (On); pragma Warnings (On);
begin begin
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
#include <stdlib.h> #include <stdlib.h>
#endif #endif
#if defined (__APPLE__) && !defined (__arm__) #if defined (__APPLE__) && !(defined (__arm__) || defined (__arm64__))
/* On Darwin, _NSGetEnviron must be used for shared libraries; but it is not /* On Darwin, _NSGetEnviron must be used for shared libraries; but it is not
available on iOS. */ available on iOS. */
#include <crt_externs.h> #include <crt_externs.h>
...@@ -211,7 +211,7 @@ __gnat_environ (void) ...@@ -211,7 +211,7 @@ __gnat_environ (void)
#elif defined (__sun__) #elif defined (__sun__)
extern char **_environ; extern char **_environ;
return _environ; return _environ;
#elif defined (__APPLE__) && !defined (__arm__) #elif defined (__APPLE__) && !(defined (__arm__) || defined (__arm64__))
return *_NSGetEnviron (); return *_NSGetEnviron ();
#elif ! (defined (__vxworks)) #elif ! (defined (__vxworks))
extern char **environ; extern char **environ;
......
...@@ -2234,7 +2234,7 @@ char __gnat_alternate_stack[32 * 1024]; /* 1 * MINSIGSTKSZ */ ...@@ -2234,7 +2234,7 @@ char __gnat_alternate_stack[32 * 1024]; /* 1 * MINSIGSTKSZ */
Tell the kernel to re-use alt stack when delivering a signal. */ Tell the kernel to re-use alt stack when delivering a signal. */
#define UC_RESET_ALT_STACK 0x80000000 #define UC_RESET_ALT_STACK 0x80000000
#ifndef __arm__ #if !(defined (__arm__) || defined (__arm64__))
#include <mach/mach_vm.h> #include <mach/mach_vm.h>
#include <mach/mach_init.h> #include <mach/mach_init.h>
#include <mach/vm_statistics.h> #include <mach/vm_statistics.h>
...@@ -2244,7 +2244,7 @@ char __gnat_alternate_stack[32 * 1024]; /* 1 * MINSIGSTKSZ */ ...@@ -2244,7 +2244,7 @@ char __gnat_alternate_stack[32 * 1024]; /* 1 * MINSIGSTKSZ */
static int static int
__gnat_is_stack_guard (mach_vm_address_t addr) __gnat_is_stack_guard (mach_vm_address_t addr)
{ {
#ifndef __arm__ #if !(defined (__arm__) || defined (__arm64__))
kern_return_t kret; kern_return_t kret;
vm_region_submap_info_data_64_t info; vm_region_submap_info_data_64_t info;
mach_vm_address_t start; mach_vm_address_t start;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
-- -- -- --
-- S p e c -- -- S p e c --
-- -- -- --
-- Copyright (C) 2008-2012, Free Software Foundation, Inc. -- -- Copyright (C) 2008-2015, Free Software Foundation, Inc. --
-- -- -- --
-- GNAT is free software; you can redistribute it and/or modify it under -- -- 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- -- -- terms of the GNU General Public License as published by the Free Soft- --
...@@ -41,15 +41,14 @@ package Pprint is ...@@ -41,15 +41,14 @@ package Pprint is
with function String_Image (S : String_Id) return String; with function String_Image (S : String_Id) return String;
with function Ident_Image (Expr : Node_Id; with function Ident_Image (Expr : Node_Id;
Orig_Expr : Node_Id; Orig_Expr : Node_Id;
Expand_Type : Boolean) Expand_Type : Boolean) return String;
return String;
-- Will be called for printing N_Identifier and N_Defining_Identifier -- Will be called for printing N_Identifier and N_Defining_Identifier
-- nodes -- nodes
-- ??? Expand_Type argument should be removed -- ??? Expand_Type argument should be removed
function Expression_Image (Expr : Node_Id; function Expression_Image
Default : String) (Expr : Node_Id;
return String; Default : String) return String;
-- Given a Node for an expression, return a String that is meaningful for -- Given a Node for an expression, return a String that is meaningful for
-- the programmer. If the expression comes from source, it is copied from -- the programmer. If the expression comes from source, it is copied from
-- there. -- there.
......
...@@ -30,8 +30,8 @@ ...@@ -30,8 +30,8 @@
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
-- This is the default implementation for platforms where the full capability -- This is the default implementation for platforms where the full capability
-- is not supported. It returns tracebacks as lists of LF separated strings of -- is not supported. It returns tracebacks as lists of hexadecimal addresses
-- the form "0x..." corresponding to the addresses. -- of the form "0x...".
pragma Polling (Off); pragma Polling (Off);
-- We must turn polling off for this unit, because otherwise we can get -- We must turn polling off for this unit, because otherwise we can get
...@@ -67,9 +67,10 @@ package body System.Traceback.Symbolic is ...@@ -67,9 +67,10 @@ package body System.Traceback.Symbolic is
Last := Last + 2; Last := Last + 2;
Result (Last + 1 .. Last + Img'Length) := Img; Result (Last + 1 .. Last + Img'Length) := Img;
Last := Last + Img'Length + 1; Last := Last + Img'Length + 1;
Result (Last) := ASCII.LF; Result (Last) := ' ';
end loop; end loop;
Result (Last) := ASCII.LF;
return Result (1 .. Last); return Result (1 .. Last);
end; end;
end if; end if;
......
...@@ -274,6 +274,8 @@ __gnat_backtrace (void **array, ...@@ -274,6 +274,8 @@ __gnat_backtrace (void **array,
#define PC_ADJUST -4 #define PC_ADJUST -4
#elif defined (__arm__) #elif defined (__arm__)
#define PC_ADJUST -2 #define PC_ADJUST -2
#elif defined (__arm64__)
#define PC_ADJUST -4
#else #else
#error Unhandled darwin architecture. #error Unhandled darwin architecture.
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment