15e580292SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++11 -emit-pch %s -o %t-cxx11 25e580292SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++11 -include-pch %t-cxx11 -verify %s 35e580292SRichard Smith 45e580292SRichard Smith #ifndef HEADER_INCLUDED 55e580292SRichard Smith 65e580292SRichard Smith #define HEADER_INCLUDED 7*b13eb8dcSJordan Rose typedef auto f() -> int; 8*b13eb8dcSJordan Rose typedef int g(); 95e580292SRichard Smith 105e580292SRichard Smith #else 115e580292SRichard Smith 125e580292SRichard Smith typedef void f; // expected-error {{typedef redefinition with different types ('void' vs 'auto () -> int')}} 13*b13eb8dcSJordan Rose // expected-note@7 {{here}} 145e580292SRichard Smith typedef void g; // expected-error {{typedef redefinition with different types ('void' vs 'int ()')}} 15*b13eb8dcSJordan Rose // expected-note@8 {{here}} 165e580292SRichard Smith 175e580292SRichard Smith #endif 18