view gcc/testsuite/g++.old-deja/g++.law/arg11.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-do assemble  }
// GROUPS passed arg-matching
// From: gustavo@cpqd.br (Gustavo Chaves)
// Date:     Wed, 25 May 94 09:38:00 EST
// Subject:  problem with user defined conversions in initialization
// Message-ID: <9405251238.AA19815@moon.cpqd.br>

struct String { String(const char*); };

struct Ack { Ack(String); };

struct S { void method(Ack); };	// { dg-message "S::method|no known conversion" } referenced below

void function(Ack);

int
foo(S *o)
{ // Neither call has a usable constructor for conversions of char[5] to Ack.
  function("adsf");// { dg-error "could not convert" }
  o->method("adsf");// { dg-error "cannot convert" } 
  return 0;
}