{"slug": "why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations", "title": "Why We Should Double-Check the AI Output: Claude Lies (AKA AI Hallucinations)", "summary": "Anthropic's Claude chatbot incorrectly claimed that Google's C++ Style Guide recommends #pragma once over #define guards, a factual error that remains uncorrected as of August 18, 2026, according to the guide's official page. The incident, reported by developer Giovanni Dicanio, underscores that AI outputs can contain hallucinations and must be carefully verified against primary sources.", "body_md": "I was “discussing” with Claude about using #define guards vs. *#pragma once* for C++ header files. At some point, Claude wrote that:\n\nIf your library is only ever going to target modern mainstream compilers (which, realistically, is true for almost everyone today), plain\n\n`#pragma once`\n\nis fine and is what most modern C++ style guides (including Google’s and LLVM’s) now recommend by default.\n\nI did remember that, last time I checked, [Google’s C++ Style Guide required #define guards](https://google.github.io/styleguide/cppguide.html#The__define_Guard) (**not** *#pragma once*) for header files. That is still true as of today (August 18th, 2026); quoting Google’s C++ Style Guide on this point:\n\nAll header files should have\n\n`#define`\n\nguards to prevent multiple inclusion. The format of the symbol name should be`.`\n\n<PROJECT>_<PATH>_<FILE>_H_\n\nSo I made my point to Claude, and it replied apologizing for its error:\n\nYou’re right, and I apologize for the error. Looking at the actual page, Google’s C++ Style Guide explicitly requires\n\n`#define`\n\nguards, not`#pragma once`\n\nThis is [another example](https://giodicanio.com/2026/07/28/why-we-should-double-check-the-ai-output-a-bug-which-wasnt/) showing how AI output cannot be 100% trusted, and should always be **carefully reviewed**.\n\n## On AI Hallucinations\n\nI briefly asked another AI (Gemini) about **AI hallucinations** (like the previous example with Claude), and it interestingly pointed out that:\n\nAI models predict the next most likely word based on patterns in data.\n\nThey do not have real-world awareness or a true concept of “truth.”\n\nThat is something to keep in mind when dealing with AI.", "url": "https://wpnews.pro/news/why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations", "canonical_source": "https://giodicanio.com/2026/08/18/why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations/", "published_at": "2026-08-18 16:20:39+00:00", "updated_at": "2026-08-18 16:45:04.693525+00:00", "lang": "en", "topics": ["large-language-models", "ai-safety"], "entities": ["Anthropic", "Claude", "Google", "Gemini", "Giovanni Dicanio"], "alternates": {"html": "https://wpnews.pro/news/why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations", "markdown": "https://wpnews.pro/news/why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations.md", "text": "https://wpnews.pro/news/why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations.txt", "jsonld": "https://wpnews.pro/news/why-we-should-double-check-the-ai-output-claude-lies-aka-ai-hallucinations.jsonld"}}