1. 21 Sep, 2004 14 commits
    • re PR libfortran/17286 (namelist containing more than one value cannot contain… · 77747e5f
      re PR libfortran/17286 (namelist containing more than one value cannot contain whitespace or newlines for READ)
      
      2004-09-21  Bud Davis  <bdavis9659@comcast.net>
      
              PR fortran/17286
              * io/list_read.c (namelist_read): ignore spaces after
              the '=' for namelist reads.
      
      2004-09-21  Bud Davis  <bdavis9659@comcast.net>
      
              PR fortran/17286
              * gfortran.dg/pr17286.f90: New test.
      
      From-SVN: r87799
      Bud Davis committed
    • decl.c (reshape_init_array): Initialize max_index_cst to fix bootstrap failure. · b6ad178e
      2004-09-21  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* decl.c (reshape_init_array): Initialize max_index_cst to fix
      	bootstrap failure.
      
      From-SVN: r87798
      Andreas Tobler committed
    • PR libstdc++/12882 (cont) · dd5d134b
      2004-09-21  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/12882 (cont)
      	* acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
      	* configure: Regenerate.
      	* config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
      	_GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
      	trivial showmanyc for large files too.
      
      From-SVN: r87797
      Paolo Carlini committed
    • X500Principal.java: Replaced with GNU Crypto's version. · fd375c53
      2004-09-21  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* javax/security/auth/x500/X500Principal.java: Replaced with GNU
      	Crypto's version.
      
      From-SVN: r87796
      Andreas Tobler committed
    • [multiple changes] · 6f5ce93b
      2004-09-21  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	Import the big Crypto/Jessie/Security merge from Classpath.
      
      	* Makefile.am: Add imported files.
      	* Makefile.in: Regenerate.
      
      	2004-08-14  Casey Marshall <csm@gnu.org>
      
      	The Big Crypto Merge of 2004.
      
      	* javax/security/auth/x500/X500Principal.java: Replaced with GNU
      	Crypto's version.
      
      	Files imported from GNU Crypto.
      	* javax/crypto/BadPaddingException.java
      	* javax/crypto/Cipher.java
      	* javax/crypto/CipherInputStream.java
      	* javax/crypto/CipherOutputStream.java
      	* javax/crypto/CipherSpi.java
      	* javax/crypto/EncryptedPrivateKeyInfo.java
      	* javax/crypto/ExemptionMechanism.java
      	* javax/crypto/ExemptionMechanismException.java
      	* javax/crypto/ExemptionMechanismSpi.java
      	* javax/crypto/IllegalBlockSizeException.java
      	* javax/crypto/KeyAgreement.java
      	* javax/crypto/KeyAgreementSpi.java
      	* javax/crypto/KeyGenerator.java
      	* javax/crypto/KeyGeneratorSpi.java
      	* javax/crypto/Mac.java
      	* javax/crypto/MacSpi.java
      	* javax/crypto/Makefile.am
      	* javax/crypto/NoSuchPaddingException.java
      	* javax/crypto/NullCipher.java
      	* javax/crypto/NullCipherImpl.java
      	* javax/crypto/SealedObject.java
      	* javax/crypto/SecretKey.java
      	* javax/crypto/SecretKeyFactory.java
      	* javax/crypto/SecretKeyFactorySpi.java
      	* javax/crypto/ShortBufferException.java
      	* javax/crypto/interfaces/DHKey.java
      	* javax/crypto/interfaces/DHPrivateKey.java
      	* javax/crypto/interfaces/DHPublicKey.java
      	* javax/crypto/interfaces/PBEKey.java
      	* javax/crypto/spec/DESKeySpec.java
      	* javax/crypto/spec/DESedeKeySpec.java
      	* javax/crypto/spec/DHGenParameterSpec.java
      	* javax/crypto/spec/DHParameterSpec.java
      	* javax/crypto/spec/DHPrivateKeySpec.java
      	* javax/crypto/spec/DHPublicKeySpec.java
      	* javax/crypto/spec/IvParameterSpec.java
      	* javax/crypto/spec/PBEKeySpec.java
      	* javax/crypto/spec/PBEParameterSpec.java
      	* javax/crypto/spec/RC2ParameterSpec.java
      	* javax/crypto/spec/RC5ParameterSpec.java
      	* javax/crypto/spec/SecretKeySpec.java
      	* javax/security/auth/AuthPermission.java
      	* javax/security/auth/DestroyFailedException.java
      	* javax/security/auth/Destroyable.java
      	* javax/security/auth/Policy.java
      	* javax/security/auth/PrivateCredentialPermission.java
      	* javax/security/auth/RefreshFailedException.java
      	* javax/security/auth/Refreshable.java
      	* javax/security/auth/Subject.java
      	* javax/security/auth/SubjectDomainCombiner.java
      	* javax/security/auth/callback/Callback.java
      	* javax/security/auth/callback/CallbackHandler.java
      	* javax/security/auth/callback/ChoiceCallback.java
      	* javax/security/auth/callback/ConfirmationCallback.java
      	* javax/security/auth/callback/LanguageCallback.java
      	* javax/security/auth/callback/NameCallback.java
      	* javax/security/auth/callback/PasswordCallback.java
      	* javax/security/auth/callback/TextInputCallback.java
      	* javax/security/auth/callback/TextOutputCallback.java
      	* javax/security/auth/callback/UnsupportedCallbackException.java
      	* javax/security/auth/login/AccountExpiredException.java
      	* javax/security/auth/login/AppConfigurationEntry.java
      	* javax/security/auth/login/Configuration.java
      	* javax/security/auth/login/CredentialExpiredException.java
      	* javax/security/auth/login/FailedLoginException.java
      	* javax/security/auth/login/LoginContext.java
      	* javax/security/auth/login/LoginException.java
      	* javax/security/auth/login/NullConfiguration.java
      	* javax/security/auth/x500/X500PrivateCredential.java
      	* javax/security/sasl/AuthenticationException.java
      	* javax/security/sasl/AuthorizeCallback.java
      	* javax/security/sasl/RealmCallback.java
      	* javax/security/sasl/RealmChoiceCallback.java
      	* javax/security/sasl/Sasl.java
      	* javax/security/sasl/SaslClient.java
      	* javax/security/sasl/SaslClientFactory.java
      	* javax/security/sasl/SaslException.java
      	* javax/security/sasl/SaslServer.java
      	* javax/security/sasl/SaslServerFactory.java
      	* org/ietf/jgss/ChannelBinding.java
      	* org/ietf/jgss/GSSContext.java
      	* org/ietf/jgss/GSSCredential.java
      	* org/ietf/jgss/GSSException.java
      	* org/ietf/jgss/GSSManager.java
      	* org/ietf/jgss/GSSName.java
      	* org/ietf/jgss/MessageProp.java
      	* org/ietf/jgss/Oid.java
      	* org/ietf/jgss/MessagesBundle.properties
      
      	Files imported from Jessie <http://www.nongnu.org/jessie/>
      	* javax/net/ServerSocketFactory.java
      	* javax/net/SocketFactory.java
      	* javax/net/VanillaServerSocketFactory.java
      	* javax/net/VanillaSocketFactory.java
      	* javax/net/ssl/HandshakeCompletedEvent.java
      	* javax/net/ssl/HandshakeCompletedListener.java
      	* javax/net/ssl/HostnameVerifier.java
      	* javax/net/ssl/HttpsURLConnection.java
      	* javax/net/ssl/KeyManager.java
      	* javax/net/ssl/KeyManagerFactory.java
      	* javax/net/ssl/KeyManagerFactorySpi.java
      	* javax/net/ssl/ManagerFactoryParameters.java
      	* javax/net/ssl/SSLContext.java
      	* javax/net/ssl/SSLContextSpi.java
      	* javax/net/ssl/SSLException.java
      	* javax/net/ssl/SSLHandshakeException.java
      	* javax/net/ssl/SSLKeyException.java
      	* javax/net/ssl/SSLPeerUnverifiedException.java
      	* javax/net/ssl/SSLPermission.java
      	* javax/net/ssl/SSLProtocolException.java
      	* javax/net/ssl/SSLServerSocket.java
      	* javax/net/ssl/SSLServerSocketFactory.java
      	* javax/net/ssl/SSLSession.java
      	* javax/net/ssl/SSLSessionBindingEvent.java
      	* javax/net/ssl/SSLSessionBindingListener.java
      	* javax/net/ssl/SSLSessionContext.java
      	* javax/net/ssl/SSLSocket.java
      	* javax/net/ssl/SSLSocketFactory.java
      	* javax/net/ssl/TrivialHostnameVerifier.java
      	* javax/net/ssl/TrustManager.java
      	* javax/net/ssl/TrustManagerFactory.java
      	* javax/net/ssl/TrustManagerFactorySpi.java
      	* javax/net/ssl/X509KeyManager.java
      	* javax/net/ssl/X509TrustManager.java
      	* javax/security/cert/Certificate.java
      	* javax/security/cert/CertificateEncodingException.java
      	* javax/security/cert/CertificateException.java
      	* javax/security/cert/CertificateExpiredException.java
      	* javax/security/cert/CertificateNotYetValidException.java
      	* javax/security/cert/CertificateParsingException.java
      	* javax/security/cert/X509CertBridge.java
      	* javax/security/cert/X509Certificate.java
      
      	2004-08-20  Casey Marshall  <csm@gnu.org>
      
      	* java/security/cert/X509CRLSelector.java: New file.
      	* java/security/cert/X509CertSelector.java: New file.
      
      From-SVN: r87795
      Andreas Tobler committed
    • re PR rtl-optimization/17482 (GCSE after reload replacing changing instructions) · c93320c4
      	PR rtl-optimization/17482
      	* postreload-gcse.c (reg_avail_info, oprs_unchanged_p,
      	load_killed_in_block_p): Clarify comments.
      	(record_last_reg_set_info): Make static inline.
      	(mark_call, mark_set, mark_clobber, mark_oprs_set): Remove.
      	(record_opr_changes): New function to replace the above.
      	(compute_hash_table): Clarify comments.  Use record_opr_changes.
      	(reg_set_between_after_reload_p): Clean up.
      	(reg_used_between_after_reload_p): Likewise.
      	(eliminate_partially_redundant_load): Clarify comments.
      
      From-SVN: r87794
      Steven Bosscher committed
    • re PR rtl-optimization/17266 (Libgfortran doesn't build) · 15ee342b
      	PR rtl-optimization/17266
      	* regmove.c (optimize_reg_copy_3): Make a new SUBREG for each insn.
      
      From-SVN: r87793
      Eric Botcazou committed
    • re PR c++/17530 (failure to emit inline function) · 9b60dfd7
      	PR c++/17530
      	* pt.c (tsubst): Fix parentheses to accomodate emacs.
      	(tsubst_baselink): If we get a single function, mark it as used.
      
      	PR c++/17530
      	* g++.dg/template/static7.C: New test.
      
      From-SVN: r87791
      Mark Mitchell committed
    • re PR rtl-optimization/14851 (suboptimal fp division with -ffast-math) · 79b82df3
              PR rtl-optimization/14851
              * rtlanal.c (commutative_operand_precedence): Calculate
              precedence of stripped constant.
      
      From-SVN: r87788
      Uros Bizjak committed
    • tree-ssanames.c (make_ssa_name): No longer need to clear, then initialize key elements here. · 6f2aec07
      
      	* tree-ssanames.c (make_ssa_name): No longer need to clear, then
      	initialize key elements here.
      	(release_ssa_name): Zero the released SSA_NAME here.
      	* tree.h (SSA_NAME_EQUIV, SET_SSA_NAME_EQUIV): New macros.
      	(struct tree_ssa_name): Add new "equiv" field.
      	* tree-ssa-dom.c (const_and_copies): Kill the global varray.
      	(tree_ssa_dominator_optimize): No longer allocate, resize or
      	clear CONST_AND_COPIES.
      	(get_value_for, set_value_for): Kill.
      	(thread_across_edge): Get/set the equivalency using
      	SSA_NAME_EQUIV and SET_SSA_NAME_EQUIV.
      	(restore_vars_to_original_value): Likewise.
      	(record_equivalences_from_phis): Likewise.
      	(record_dominating_conditions): Likewise.
      	(record_const_or_copy, record_equality): Likewise.
      	(lookup_avail_expr): Likewise.
      	(record_equivalences_from_stmt, cprop_operand): Likewise.
      	(cprop_into_successor_phis): No longer need to pass around
      	CONST_AND_COPIES.  Callers updated. Get equivalences via
      	SSA_NAME_EQUIV.
      	(cprop_into_phis): Likewise.
      
      Co-Authored-By: Jan Hubicka <jh@suse.cz>
      
      From-SVN: r87787
      Jeff Law committed
    • c-common.c (fix_string_type): Build the unqualified array type unconditionally... · c162c75e
      2004-09-20  Matt Austern <austern@apple.com>
      	    Zack Weinberg  <zack@codesourcery.com>
      
      	* c-common.c (fix_string_type): Build the unqualified array
      	type unconditionally, then use c_build_qualified_type to get
      	the proper const-qualified variant, and set its
      	TYPE_MAIN_VARIANT to refer to the unqualified type.
      	* c-lex.c (c_lex_return_raw_string): New global.
      	(c_lex_with_flags): Honor it.
      	* c-pragma.h: Declare it.
      
      cp:
      	* decl.c (make_rtl_for_nonlocal_decl, start_preparsed_function):
      	Apply lbasename to input_filename before passing to get_fileinfo.
      	* semantics.c (begin_class_definition): Likewise.
      	* lex.c (handle_pragma_interface): Apply get_fileinfo to the
      	correct filename.  Rename variables to be less confusing.
      	(handle_pragma_implementation): Likewise.  Disable "appears
      	after file is included" diagnostic.
      
      	* parser.c (struct cp_token): Add in_system_header fiag.
      	(CP_TOKEN_BLOCK_NUM_TOKENS, struct cp_token_block)
      	(CP_TOKEN_BUFFER_SIZE, cp_token_cache_push_token)
      	(CPP_NONE, cp_lexer_read_token): Delete.
      	(struct cp_lexer): Remove first_token, string_tokens,
      	main_lexer_p fields.  Clarify comments.
      	(struct cp_token_cache): Now just a pair of pointers.
      	(CP_LEXER_BUFFER_SIZE): New #define.
      	(CPP_PURGED): New fake token type.
      	(cp_lexer_new_from_token_array, cp_lexer_destroy)
      	(cp_lexer_peek_token_emit_debug_info, cp_lexer_skip_purged_tokens)
      	(cp_lexer_handle_pragma, cp_token_cache_new, cp_parser_string_literal):
      	New functions.
      	(cp_lexer_new_from_tokens): Now a simple wrapper around
      	cp_lexer_new_from_token_array.
      	(cp_lexer_set_source_position_from_token): Also update
      	in_system_header.
      	(cp_lexer_next_token, cp_lexer_prev_token, cp_lexer_advance_token):
      	Don't wrap round.
      	(cp_lexer_token_difference): Dont handle wrapping round.
      	(cp_lexer_new_main): Enable pragma deferral and raw strings,
      	read the entire translation unit through c_lex_with_flags into
      	this lexer's buffer, then turn raw strings back off again.
      	(cp_lexer_grow_buffer): Adjust for buffer no longer being circular.
      	(cp_lexer_get_preprocessor_token): No need to handle not being
      	the main lexer.  Set token->in_system_header too.
      	(cp_lexer_peek_token): Skip purged tokens.  Feed pragma tokens
      	to cp_lexer_handle_pragma.  No need to call cp_lexer_read_token.
      	(cp_lexer_peek_nth_token): Likewise.
      	(cp_lexer_purge_token): Mark the token PURGED, don't shift all
      	the other tokens down.
      	(cp_lexer_purge_tokens_after): Likewise.
      	(cp_lexer_save_tokens, cp_lexer_rollback_tokens): Don't worry
      	about there being no tokens.
      	(cp_lexer_print_token): Revise to give useful information on
      	all tokens.
      	(struct cp_parser): Add field translate_strings_p.
      	(cp_parser_new): Initialize it.
      	(cp_parser_translation_unit): Destroy the lexer when done.
      	(cp_parser_parameter_declaration): Restructure saving of
      	default arguments.
      	(cp_parser_save_member_function_body): Likewise.
      	(cp_parser_check_for_invalid_template_id)
      	(cp_parser_nested_name_specifier_opt, cp_parser_template_id):
      	Adjust calls to cp_lexer_advance_token.
      	(cp_parser_skip_to_closing_parenthesis, cp_parser_declaration):
      	No need to fiddle c_lex_string_translate.
      	(cp_parser_primary_expression, cp_parser_linkage_specification)
      	(cp_parser_asm_definition, cp_parser_asm_specification_opt)
      	(cp_parser_asm_operand_list, cp_parser_asm_clobber_list)
      	Use cp_parser_string_literal.
      	(cp_parser_attribute_list): Save and restore
      	parser->translate_strings_p, not c_lex_string_translate.
      	(cp_parser_cache_group): Delete.
      	(cp_parser_cache_group_1): Rename cp_parser_cache_group.  Do
      	not take a cache argument.
      
      From-SVN: r87786
      Matt Austern committed
    • Makefile.in: Fix flags.h dependencies to be $(FLAGS_H). · 5cfa8766
      2004-09-20  Daniel Berlin  <dberlin@dberlin.org>
      
      	* Makefile.in: Fix flags.h dependencies to be $(FLAGS_H).
      
      From-SVN: r87785
      Daniel Berlin committed
    • Daily bump. · d6c0b27a
      From-SVN: r87783
      GCC Administrator committed
    • re PR middle-end/17126 (ICE with -fno-unit-at-a-time and -O3) · d21bede3
      	PR middle-end/17126
      	* tree-optimize.c (update_inlined_to_pointers): Fix the recursion.
      	(tree_rest_of_compilation): Cleanup.
      
      From-SVN: r87780
      Jan Hubicka committed
  2. 20 Sep, 2004 26 commits