Richard,

Your recent patch broke --enable-build-with-cxx because internal-fn.h
was using good 'ol C-style name lookup trick that behaves badly with
C++ linkage rules.  Fixed thusly.  Applied as obvious.

-- Gaby

2011-04-27  Gabriel Dos Reis  <g...@integrable-solutions.net>

        * internal-fn.h (internal_fn_name_array): Declare.
        (internal_fn_flags_array): Likewise.

*** internal-fn.h       (revision 173070)
--- internal-fn.h       (local)
*************** enum internal_fn {
*** 30,48 ****
  /* Return the name of internal function FN.  The name is only meaningful
     for dumps; it has no linkage.  */
  
  static inline const char *
  internal_fn_name (enum internal_fn fn)
  {
-   extern const char *const internal_fn_name_array[];
    return internal_fn_name_array[(int) fn];
  }
  
  /* Return the ECF_* flags for function FN.  */
  
  static inline int
  internal_fn_flags (enum internal_fn fn)
  {
-   extern const int internal_fn_flags_array[];
    return internal_fn_flags_array[(int) fn];
  }
  
--- 30,50 ----
  /* Return the name of internal function FN.  The name is only meaningful
     for dumps; it has no linkage.  */
  
+ extern const char *const internal_fn_name_array[];
+ 
  static inline const char *
  internal_fn_name (enum internal_fn fn)
  {
    return internal_fn_name_array[(int) fn];
  }
  
  /* Return the ECF_* flags for function FN.  */
  
+ extern const int internal_fn_flags_array[];
+ 
  static inline int
  internal_fn_flags (enum internal_fn fn)
  {
    return internal_fn_flags_array[(int) fn];
  }
  

Reply via email to