Compiler isim araması yaparken bulunduğu isim alanı ve global isim alanı dışında fonksiyon parametresine bağlı olarak bir arama daha yapmaktadir.
Yukaridaki en temel Argument Dependent Lookup örneğinde görebileceginiz üzere normalde alert() fonksiyonu baska bir isim alanı içerisinde olsa da fonksiyonun parametresi ADL namespace içerisinde oldugu için compiler buraya da bakacak ve sonuç olarak fonksiyon uygun fonksiyon çağrısını yapabilecektir.
Şimdi ADL'nin daha kompleks problemlerini inceleyelim:
Asağıda ise beklentilerin tersine sonuclanan ikinci örneği görmek mümkün. Normalde Mercedes sınıfı içerisindeki foo çağrısı doğrudan sınıfın üye fonksiyonu olan foo() 'nun üzerinden yapılmaya çalışacak ve bunun karşılığı olarak parametreli çağrı yapıldığı için hata verecektir.
Compiler 2 nolu fonksiyon cağrısını yapmak isteyecek 1 nolu fonkiyonu dikkate almayacaktır. Bu nedenle aşağıdaki gibi derleme hatası oluşacaktır.
Asağıda ise beklentilerin tersine sonuçlanacak olan üçüncü örneği görmek mümkündür. Burada bar fonksiyonu içerisinde extern fonksiyon bildirimi yapılmıştır.