Commit Graph

56140 Commits

Author SHA1 Message Date
Richard Henderson
1aaec916ad c-parse.in (extension): Use itype.
* c-parse.in (extension): Use itype.
        (SAVE_EXT_FLAGS): Don't allocate a tree.
        (RESTORE_EXT_FLAGS): Don't read a tree.

From-SVN: r76676
2004-01-26 15:02:04 -08:00
Richard Henderson
242d879216 Revert accidental commit.
From-SVN: r76675
2004-01-26 14:59:40 -08:00
Richard Henderson
6d4b0a5d57 c-parse.in (extension): Use itype.
* c-parse.in (extension): Use itype.
        (SAVE_EXT_FLAGS): Don't allocate a tree.
        (RESTORE_EXT_FLAGS): Don't read a tree.

From-SVN: r76674
2004-01-26 14:57:19 -08:00
Rainer Orth
32e7d1e9bb * objc.dg/stret-1.m (glob): Renamed to globa.
From-SVN: r76671
2004-01-26 22:13:38 +00:00
Rainer Orth
7f996f9072 Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
* Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.

	* 5fsystem.ads (Functions_Return_By_DSP): Set to False.
	(ZCX_By_Default): Likewise.
	(Front_End_ZCX_Support): Likewise.

	* 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
	(Initialize_Lock): Mark Level unreferenced.
	(Sleep): Mark Reason unreferenced.
	(Timed_Sleep): Likewise.
	(Wakeup): Likewise.
	(Exit_Task): Use Result.
	(Check_No_Locks): Mark Self_ID unreferenced.

	* 5gtasinf.adb (New_Sproc): Make Attr constant.
	(Bound_Thread_Attributes): Make Sproc constant.
	(New_Bound_Thread_Attributes): Likewise.

From-SVN: r76669
2004-01-26 21:56:05 +00:00
David Jee
7edbd87e17 2004-01-26 David Jee <djee@redhat.com>
* gnu/java/awt/peer/gtk/GtkComponentPeer.java
	(handleEvent): Implemented. Handles PaintEvents.
	(paint): Implemented. Use GTK native methods to queue updates
        for this heavyweight peer.
	* gnu/java/awt/peer/gtk/GtkContainerPeer.java
	(handleEvent): Removed.
	* java/awt/Component.java
	(paint): Implemented. Explictly paint the heavyweight peer.
	(update): Clear the background for heavyweight components.
	(paintAll): No need to call peer.paint() anymore.
	(processEvent): Don't process PaintEvents here. It's now done in
	the peer's handleEvent().
	(processPaintEvent): Removed.
	* java/awt/Container.java
	(paint): No need to call super.paint(). Visit heavyweight
	children as well.
	(update): Don't clear the background here.  It's done in
	Component.update().
	(visitChildren): Added check to not recurse into Containers.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(filter_expose_event_handler): New method.  Filter unwanted
	expose events while painting heavyweight peers.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_addExposeFilter):
	New method. Connect filter and block pre_event_handler.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_removeExposeFilter):
	New method. Disconnect filter and unblock pre_event_handler.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkWidgetQueueDrawArea):
	New method. Invalidate and update given area.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(pre_event_handler): Add checks for unwanted expose events.

From-SVN: r76668
2004-01-26 21:55:42 +00:00
David Jee
81a88a6157 2004-01-26 David Jee <djee@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(find_bg_color_widget): For GtkButton, return its child.

From-SVN: r76667
2004-01-26 21:04:06 +00:00
Jan Hubicka
18874af693 cselib.c (discard_useless_values): Clear out value pointer pointing to datastructure to be recycled.
* cselib.c (discard_useless_values):  Clear out value pointer pointing
	to datastructure to be recycled.

From-SVN: r76666
2004-01-26 20:38:54 +00:00
Jan Hubicka
501f88de2f * genextract.c (main): Do not output the memset when not checking.
From-SVN: r76665
2004-01-26 20:34:22 +00:00
Paolo Carlini
0e50667c21 basic_string.h (_M_replace_aux): Use the __N marker in throw message.
2004-01-26  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h (_M_replace_aux): Use the
	__N marker in throw message.
	* include/bits/basic_string.tcc (assign(const _CharT*,
	size_type), insert(size_type, const _CharT*, size_type),
	replace(size_type, size_type, const _CharT*, size_type),
	reserve, _Rep::_S_create, resize, _M_replace_dispatch):
	Likewise.

	* include/bits/basic_string.h, include/bits/basic_string.tcc:
	Fold overlong lines, minor formatting changes.

From-SVN: r76664
2004-01-26 20:23:20 +00:00
Kazu Hirata
d6456562b6 h8300.c (h8300_tiny_constant_address_p): Use a switch statement instead of a chain of if statements.
* config/h8300/h8300.c (h8300_tiny_constant_address_p): Use a
	switch statement instead of a chain of if statements.

From-SVN: r76663
2004-01-26 20:21:11 +00:00
Mark Mitchell
6f69173e89 re PR c++/13663 (gcc segfaults on invalid use of member)
PR c++/13663
	* semantics.c (finish_for_expr): Check for unresolved overloaded
	functions.

	PR c++/13363
	* g++.dg/expr/for1.C: New test.

From-SVN: r76659
2004-01-26 20:11:46 +00:00
Andrew Pinski
044feeeba0 Add changelog entry for the testcase which was forgotten by Fariborz Jahanian.
From-SVN: r76657
2004-01-26 10:50:29 -08:00
Jeff Law
5cea9d5d0a contrib.texi: Minor cleanup for Paolo Carlini's entry.
* doc/contrib.texi: Minor cleanup for Paolo Carlini's entry.  Add
        acute accents for Petur Runolfsson's entry.

From-SVN: r76655
2004-01-26 11:31:07 -07:00
Kazu Hirata
04e9daaf31 pdp11.c (TARGET_STRUCT_VALUE_RTX): New.
* config/pdp11/pdp11.c (TARGET_STRUCT_VALUE_RTX): New.
	(TARGET_RETURN_IN_MEMORY): Likewise.
	* config/pdp11/pdp11.h (STRUCT_VALUE): Remove.
	(RETURN_IN_MEMORY): Likewise.

From-SVN: r76654
2004-01-26 18:17:58 +00:00
Fariborz Jahanian
b2037eac29 Test case for PR middle-end/13779.
From-SVN: r76652
2004-01-26 17:48:49 +00:00
Fariborz Jahanian
6c8066b9ca rs6000.c, rs6000.md, function.c, expr.c checked in.
rs6000.c, rs6000.md, function.c, expr.c checked in. All related to -mcpu=G5
compilation mode.

From-SVN: r76651
2004-01-26 17:47:42 +00:00
Fariborz Jahanian
d3a16cbdaf re PR middle-end/13779 ([3.4 only] powerpc64: incorrect initialization of 'long long' with constant)
PR middle-end/13779
split constant correctly into register components of PARALLEL insn.
OKed by Roger Sayle.

From-SVN: r76649
2004-01-26 17:45:42 +00:00
Fariborz Jahanian
6e290f1155 Do not assign long long argument to memory in prologue if loaded in register.
OKed by Richard Henderson.

From-SVN: r76648
2004-01-26 17:43:46 +00:00
Mark Mitchell
c353b8e3fb class.c (add_method): Just check processing_template_decl to determine whether or not we are within a...
* class.c (add_method): Just check processing_template_decl to
	determine whether or not we are within a template.
	* decl2.c (maybe_retrofit_in_chrg): Likewise.
	* init.c (decl_constant_value): Check the type of the declaration,
	not TREE_READONLY.
	* name-lookup.c (maybe_push_to_top_level): Rename to ...
	(push_to_top_level): ... this.
	* name-lookup.h (maybe_push_to_top_level): Do not declare it.
	* pt.c (push_template_decl_real): Reorder condition for speed.
	(convert_template_argument): Use dependency-checking functions in
	place of uses_template_parms.
	(lookup_template_class): Avoid calling uses_template_parms more
	than once.
	(uses_template_parms): Reimplement, using dependency-checking
	functions.
	(instantiate_class_template): Use push_to_top_level, not
	maybe_push_to_top_level.
	(type_unification_real): Simplify.
	(type_dependent_expression_p): Handle OFFSET_REFs and
	TEMPLATE_DECLs.
	(any_dependent_template_arguments_p): Handle multiple levels of
	template argument.
	* semantics.c (expand_or_defer_fn): Do not check
	uses_template_parms for template instantiations.
	* typeck.c (comptypes): Avoid calling cp_type_quals.

From-SVN: r76647
2004-01-26 17:41:50 +00:00
Fariborz Jahanian
d9b7db1265 Split slow unaligned load/store into smaller loads and stores.
OKed by David Edelsohn.

From-SVN: r76646
2004-01-26 17:40:06 +00:00
Fariborz Jahanian
11b2571676 Use adjust_address_nv directly with appropriate mode.
OKed by David Edelsohn.

From-SVN: r76645
2004-01-26 17:38:51 +00:00
Kazu Hirata
4c45af42f5 xtensa-protos.h: Remove the prototype for xtensa_builtin_saveregs.
* config/xtensa/xtensa-protos.h: Remove the prototype for
	xtensa_builtin_saveregs.
	* config/xtensa/xtensa.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
	(TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
	(TARGET_PROMOTE_PROTOTYPES): Likewise.
	(TARGET_STRUCT_VALUE_RTX): Likewise.
	(TARGET_RETURN_IN_MEMORY): Likewise.
	(TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
	(xtensa_builtin_saveregs): Make it static.
	(xtensa_return_in_memory): New.
	* config/xtensa/xtensa.h (PROMOTE_FUNCTION_ARGS: Remove.
	(PROMOTE_FUNCTION_RETURN): Likewise.
	(PROMOTE_PROTOTYPES): Likewise.
	(STRUCT_VALUE): Likewise.
	(RETURN_IN_MEMORY): Likewise.
	(EXPAND_BUILTIN_SAVEREGS): Likewise.

From-SVN: r76644
2004-01-26 17:33:37 +00:00
Kazu Hirata
1cc9f5f5f9 arm.c (TARGET_SETUP_INCOMING_VARARGS): New.
* config/arm/arm.c (TARGET_SETUP_INCOMING_VARARGS): New.
	(arm_setup_incoming_varargs): Likewise.
	* config/arm/arm.h (SETUP_INCOMING_VARARGS): Remove.

From-SVN: r76643
2004-01-26 16:35:44 +00:00
Kazu Hirata
558d352a12 cris.c (TARGET_SETUP_INCOMING_VARARGS): New.
* config/cris/cris.c (TARGET_SETUP_INCOMING_VARARGS): New.
	(cris_setup_incoming_varargs): Likewise.
	* config/cris/cris.h (SETUP_INCOMING_VARARGS): Remove.

From-SVN: r76640
2004-01-26 15:54:45 +00:00
Ian Lance Taylor
044701ce86 20040124-1.c: Moved test from here...
* gcc.dg/20040124-1.c: Moved test from here...
	* gcc.c-torture/compile/20040124-1.c: ...to here.

From-SVN: r76639
2004-01-26 15:52:38 +00:00
Kazu Hirata
2001a5cf1f ns32k.c (TARGET_STRUCT_VALUE_RTX): New.
* config/ns32k/ns32k.c (TARGET_STRUCT_VALUE_RTX): New.
	(ns32k_struct_value_rtx): Likewise.
	* config/ns32k/ns32k.h (STRUCT_VALUE_REGNUM): Rename to
	NS32K_STRUCT_VALUE_REGNUM.

From-SVN: r76638
2004-01-26 15:50:55 +00:00
Kazu Hirata
f9ba5949c9 arm.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
* config/arm/arm.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
	(TARGET_PROMOTE_PROTOTYPES): Likewise.
	(TARGET_STRUCT_VALUE_RTX): Likewise.
	(arm_struct_value_rtx): Likewise.
	* config/arm/arm.h (PROMOTE_FUNCTION_ARGS): Remove.
	(STRUCT_VALUE): Likewise.
	(STRUCT_VALUE_REGNUM): Likewise.
	(PROMOTE_PROTOTYPES): Likewise.

From-SVN: r76636
2004-01-26 15:40:04 +00:00
Kazu Hirata
351a758bd9 ia64-protos.h: Remove the prototype for ia64_setup_incoming_varargs and ia64_return_in_memory.
* config/ia64/ia64-protos.h: Remove the prototype for
	ia64_setup_incoming_varargs and ia64_return_in_memory.
	* config/ia64/ia64.c (TARGET_STRUCT_VALUE_RTX): New.
	(TARGET_RETURN_IN_MEMORY): Likewise.
	(TARGET_SETUP_INCOMING_VARARGS): Likewise.
	(TARGET_STRICT_ARGUMENT_NAMING): Likewise.
	(ia64_setup_incoming_varargs): Adjust the arguments to meet
	the requirement of TARGET_SETUP_INCOMING_VARARGS.
	(ia64_return_in_memory): Make it static.  Change the return
	type to bool from int.  Add an argument.
	(ia64_struct_value_rtx): New.
	* config/ia64/ia64.h: Remove commented-out definitions of
	PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN, and
	PROMOTE_PROTOTYPES.
	(RETURN_IN_MEMORY): Remove.
	(STRUCT_VALUE_REGNUM): Likewise.
	(STRICT_ARGUMENT_NAMING): Likewise.

From-SVN: r76635
2004-01-26 15:32:42 +00:00
Arnaud Charlet
26fd4eae69 [multiple changes]
2004-01-26  Ed Schonberg  <schonberg@gnat.com>

	* exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
	one-dimensional array an slice assignments, when component type is
	controlled.

	* exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
	component type is controlled, and control_actions are in effect, use
	TSS procedure rather than generating inline code.

	* exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
	arrays with controlled components.

2004-01-26  Vincent Celier  <celier@gnat.com>

	* gnatcmd.adb (GNATCmd): Add specification of argument file on the
	command line for the non VMS case.

	* gnatlink.adb (Process_Binder_File): When building object file, if
	GNU linker is used, put all object paths between quotes, to prevent ld
	error when there are unusual characters (such as '!') in the paths.

	* Makefile.generic: When there are sources in Ada and the main is in
	C/C++, invoke gnatmake with -B, instead of -z.

	* vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
	from VMS_Conversion.
	(Process_Argument): New procedure, extracted from VMS_Conversion. Add
	specification of argument file on the command line.

2004-01-26  Bernard Banner  <banner@gnat.com>

	* Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64

2004-01-26  Ed Schonberg  <schonberg@gnat.com>

	* snames.adb: Update copyright notice.
	Add info on slice assignment for controlled arrays.

From-SVN: r76634
2004-01-26 15:47:48 +01:00
Kim Ho
ecf67f46ef GtkFramePeer.java (menuBarHeight): Mark private.
2004-01-26  Kim Ho  <kho@redhat.com>

        * gnu/java/awt/peer/gtk/GtkFramePeer.java (menuBarHeight): Mark
        private.
        (setMenuBar): Grab MenuBar height and change insets.
        (setBounds): Account for MenuBar height.
        (postInsetsChangedEvent): Ditto.
        (postSizeAllocateEvent): Remove.
        * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
        (menubar_resize_cb): Remove
        (setMenuBarPeer): Remove callback.
        (getMenuBarHeight): Use size requisition instead of
        allocation.

From-SVN: r76633
2004-01-26 13:56:59 +00:00
Paolo Carlini
4d39d873e0 basic_string.h (replace(iterator, iterator, const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
2004-01-26  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.h (replace(iterator, iterator,
	const basic_string&)): Remove _GLIBCXX_DEBUG_PEDASSERT.
	(replace(iterator, iterator, const _CharT*)): Ditto.
	(replace(iterator, iterator, const _CharT*, size_type)):
	Add missing _GLIBCXX_DEBUG_PEDASSERT.

From-SVN: r76630
2004-01-26 12:58:53 +00:00
Eric Botcazou
a7bba6ca0e re PR target/13666 (deviation from the psABI for small unions)
PR target/13666
	* config/sparc/sparc.c (function_arg_union_value): New function.
	(function_arg): Use it to deal with unions.
	(function_value): Likewise.  Define 'regbase' only for ARCH64.
	Replace a conditional statement by a simpler one.

From-SVN: r76628
2004-01-26 11:11:11 +00:00
Paolo Carlini
2cb612d1b0 basic_string.tcc (replace(size_type, size_type, const _CharT*, size_type)): Implement optimized in-place algorithm for non-overlapping ranges.
2004-01-26  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/basic_string.tcc (replace(size_type,
	size_type, const _CharT*, size_type)): Implement optimized
	in-place algorithm for non-overlapping ranges.
	* testsuite/21_strings/basic_string/replace/char/6.cc: New.
	* testsuite/21_strings/basic_string/replace/wchar_t/6.cc: New.

	* include/bits/basic_string.tcc (insert(size_type,
	const _CharT*, size_type)): Tweak slightly.

From-SVN: r76625
2004-01-26 09:07:18 +00:00
Richard Sandiford
6865f4cd9f mips.c (mips16_optimize_gp): Delete.
* config/mips/mips.c (mips16_optimize_gp): Delete.
	(mips_reorg): Don't call it.

From-SVN: r76623
2004-01-26 08:07:01 +00:00
Eric Botcazou
f210a0077b sparc-ret.c: Run only in 32-bit mode.
* gcc.dg/sparc-ret.c: Run only in 32-bit mode.  Don't scan
	the assembly output if -m64 is passed.

From-SVN: r76621
2004-01-26 07:39:29 +00:00
Ian Lance Taylor
5254fd7b55 configure.ac: Add m4_pattern_allow(LIBOBJS).
* configure.ac: Add m4_pattern_allow(LIBOBJS).
	* configure: Regenerate.

From-SVN: r76619
2004-01-26 04:44:11 +00:00
Michael Hayes
2d6d0eb56c c4x.md (addqi3_noclobber): Move up pecking order.
* config/c4x/c4x.md (addqi3_noclobber): Move up pecking order.
	(floatunsqihf2): Remove operand 6.
	(fixhfqi_set, fix_trunchfqi2, fixuns_trunchfqi2): Group with other
	fix patterns.
	(ldi_conditional, ldf_conditional): Validate operands.

From-SVN: r76618
2004-01-26 03:36:07 +00:00
Michael Hayes
8f42219220 c4x.h (BCT_CHECK_LOOP_ITERATIONS): Remove.
* config/c4x/c4x.h (BCT_CHECK_LOOP_ITERATIONS): Remove.
	(HAVE_GAS_HIDDEN): Undefine as interim measure.

From-SVN: r76617
2004-01-26 03:24:39 +00:00
Mark Mitchell
b7c707d1d9 re PR c++/13833 (Conversion problem in template function)
PR c++/13833
	* call.c (build_over_call): Do not convert arguments when
	processing a template.
	* pt.c (build_non_dependent_expr): Do not build a
	NON_DEPENDENT_EXPR for arithmetic constants.

	PR c++/13833
	* g++.dg/template/cond3.C: New test.

From-SVN: r76616
2004-01-26 03:13:49 +00:00
Michael Hayes
9c3602e40f c4x.c (c4x_legitimate_address_p): Invalidate direct memory references if TARGET_EXPOSE_LDP nonzero.
* config/c4x/c4x.c (c4x_legitimate_address_p):  Invalidate direct
	memory references if TARGET_EXPOSE_LDP nonzero.

From-SVN: r76611
2004-01-26 00:40:05 +00:00
Michael Hayes
a026b9d64d * config/c4x/c4x.c (legitimize_operands): Truncate invalid shift counts.
From-SVN: r76610
2004-01-26 00:31:50 +00:00
Michael Hayes
b6ab76d653 Fix last commit.
From-SVN: r76608
2004-01-26 00:28:33 +00:00
Michael Hayes
b7bbb57472 c4x.c (c4x_valid_operands): More aggressively reject invalid operand combinations.
* config/c4x/c4x.c (c4x_valid_operands): More aggressively reject
	invalid operand combinations.

From-SVN: r76607
2004-01-26 00:20:07 +00:00
GCC Administrator
3a03ba7473 Daily bump.
From-SVN: r76604
2004-01-26 00:16:15 +00:00
Michael Hayes
1e903c616e c4x.c (c4x_check_legit_addr): Rename to c4x_legitimate_address_p.
* config/c4x/c4x.c (c4x_check_legit_addr): Rename to
	c4x_legitimate_address_p.  Fix post_modify check.
	* config/c4x/c4x-protos.h (c4x_check_legit_addr): Adjust.
	* config/c4x/c4x.h (c4x_check_legit_addr): Adjust.

From-SVN: r76601
2004-01-26 00:12:05 +00:00
Kazu Hirata
3f12cd9b3c pa-protos.h: Remove the prototype for hppa_builtin_saveregs.
* config/pa/pa-protos.h: Remove the prototype for
	hppa_builtin_saveregs.  Add a prototype for
	pa_return_in_memory.
	* config/pa/pa.c (TARGET_PROMOTE_FUNCTION_RETURN): New.
	(TARGET_PROMOTE_PROTOTYPES): Likewise.
	(TARGET_STRUCT_VALUE_RTX): Likewise.
	(TARGET_RETURN_IN_MEMORY): Likewise.
	(TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
	(pa_struct_value_rtx): Likewise.
	(pa_return_in_memory): Likewise.
	* config/pa/pa.h (STRUCT_VALUE_REGNUM): Rename to
	PA_STRUCT_VALUE_REGNUM.
	(INIT_CUMULATIVE_ARGS): Use pa_return_in_memory.
	(EXPAND_BUILTIN_SAVEREGS): Remove.
	(PROMOTE_PROTOTYPES): Likewise.
	(PROMOTE_FUNCTION_RETURN): Likewise.

From-SVN: r76600
2004-01-26 00:09:47 +00:00
Kazu Hirata
f289e226f1 vax.c (TARGET_PROMOTE_PROTOTYPES): New.
* config/vax/vax.c (TARGET_PROMOTE_PROTOTYPES): New.
	(TARGET_STRUCT_VALUE_RTX): Likewise.
	(vax_struct_value_rtx): Likewise.
	* config/vax/vax.h (STRUCT_VALUE_REGNUM): Rename to
	VAX_STRUCT_VALUE_REGNUM.
	(PROMOTE_PROTOTYPES): Remove.

From-SVN: r76599
2004-01-26 00:05:38 +00:00
Michael Hayes
12fb52cf27 * config/c4x/c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Handle symref.
From-SVN: r76598
2004-01-25 23:58:39 +00:00
Chris Demetriou
fdcf1e1ed5 mips.h (ISA_HAS_HILO_INTERLOCKS): MIPS32, MIPS32r2, and MIPS64 have HI/LO interlocks.
2003-04-25  Chris Demetriou  <cgd@broadcom.com>

        * config/mips/mips.h (ISA_HAS_HILO_INTERLOCKS): MIPS32, MIPS32r2,
        and MIPS64 have HI/LO interlocks.  Update comment.

From-SVN: r76597
2004-01-25 15:45:48 -08:00