Skip to content
  1. Mar 27, 2010
  2. Mar 26, 2010
  3. Mar 25, 2010
    • Douglas Gregor's avatar
      Warn when the conversion of an integral non-type template argument to · 63eed633
      Douglas Gregor authored
      the type of its corresponding non-type template parameter changes the
      value. Previously, we were diagnosing this as an error, which was
      wrong. We give reasonably nice warnings like:
      
      test/SemaTemplate/temp_arg_nontype.cpp:100:10: warning: non-type template
            argument value '256' truncated to '0' for template parameter of type
            'unsigned char'
      Overflow<256> *overflow3; // expected-warning{{non-type template ...
               ^~~
      test/SemaTemplate/temp_arg_nontype.cpp:96:24: note: template parameter is
            declared here
      template<unsigned char C> struct Overflow;
                             ^
      
      llvm-svn: 99561
      63eed633
    • Douglas Gregor's avatar
      Teach the diagnostic engine to provide more detailed information about · 210b5905
      Douglas Gregor authored
      how to handle a diagnostic during template argument deduction, which
      may be "substitution failure", "suppress", or "report". This keeps us
      from, e.g., emitting warnings while performing template argument
      deduction.
      
      llvm-svn: 99560
      210b5905
    • John McCall's avatar
      When finishing a function definition, leave the function definition *after* · e99d5f30
      John McCall authored
      doing all the cleanup tasks and checks.  This gives us the proper context for
      checking access to base and member destructors.
      
      llvm-svn: 99559
      e99d5f30
Loading