Compilers are relatively complicated programs, so it is sometimes assumed that the ability to write something like a compiler is an indication that a computer language has enough power to write complicated programs -- i.e. a "true" programming language.
The compiler doesn't have to be written in the same language as it is compiling. For example, if C is used to write a Pascal compiler, it still fulfills the (somewhat non-scientific) test that C is a true programming language.
Obviously, for there to be a test, there has to be computer languages that are not powerful enough to write a compiler -- or that it may be so convoluted/complicated that it is not even attempted. Some 4GL, certain scripting languages, or specialized language (can you write a compiler in LISP? I dunno...) may fall into this category.
As mentioned, this is by no means a "scientific" test of a language. It originally came about only for marketing. There are some slight benefits though -- having a compiler, the O/S and utilities written in the same language means that you can have a complete programming environment in one single language, vastly simplifying maintenance. Unix and C is a good first example of a "C-only" environment.